![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
水云游
这个作者很懒,什么都没留下…
展开
-
golang 使用切片实现环形队列(支持多协程)
package mainimport ( "sync")type Queue struct { head int foot int arr []interface{} lock *sync.Mutex cap int}//NewQueue 新建一个队列func NewQueue(length int) *Queue { q := &Queue{ head: 0,// 包含此下表值 foot: 0,// 不包含此下标值 arr: make([]interfa原创 2021-08-16 13:40:06 · 342 阅读 · 0 评论 -
关于go-micro中使用consul的一些注意细节
今天因为配置go-micro中使用consul作为服务发现踩了一天的坑,最后终于成功解决1.安装go-micro(windows)# 安装go-microgo get -u -v github.com/micro/go-micro# 安装工具集go get -u -v github.com/micro/micro# 安装protobuf插件go get -u -v github.com/golang/protobuf/{proto,protoc-gen-go}go get -u -v g原创 2021-04-02 16:21:43 · 755 阅读 · 0 评论 -
go语言实现稀疏数组
每种数据结构以及算法的出现都肯定有其应用场景,毕竟技术的产生就是用来解决问题的,现在我们有如下应用场景:有一个11*11的二维数组,存储了以下数据,但是大部分元素都是无意义的0,只有2条数据是有意义的,这个时候如果还用二维数组存储,肯定会大量的消耗空间,这个时候就用到了稀疏数组我们可以把数组的行和列以及默认数据记录下来,把有用的数组做出一个节点存储起来,使用到的时候在还原回来,这就是稀疏数组的思想,以下为go语言实现稀疏数组代码package mainimport "fmt"type Val原创 2021-03-31 11:16:08 · 175 阅读 · 0 评论