摘要: 这些细节实际项目中未必会用到,可能可读性较差 defer函数用到变量时,变量已经定义,这个分两种情况,是否闭包, 闭包使用引用,最后到defer执行时,可能变量已经被改变。 return发生分为两步,第一步给返回值赋值,例如 return res 先给res赋值,再执行defer函数,最后返回。 以 阅读全文
posted @ 2020-09-27 18:38 海拉尔 阅读(1067) 评论(0) 推荐(0)
摘要: 上半部分参考 https://www.jianshu.com/p/63404461e520 golang 在栈或者堆中分配内存,更倾向在栈中分配因为代价低, 内存逃逸上指,编译器编译时检查变量,发现整个生命周期是否在运行时完全可知。 如果可知,它就可以在栈上分配。否则就说它 逃逸 了,必须在堆上分配 阅读全文
posted @ 2020-09-17 14:52 海拉尔 阅读(593) 评论(0) 推荐(0)
摘要: 堆排序可以很好解决TopK问题 时间复杂度 N(logN),不稳定排序,相同大小数据仍可能交换位置 寻找海量数据中最大的100个数据,可以建立容量100的小顶堆,然后将后面的数据与堆顶最小值比较, 如果比它大,进行交换重新将堆进行调整,后面数据以此类推,可以得到top 100的数据 package 阅读全文
posted @ 2020-09-15 11:30 海拉尔 阅读(1425) 评论(4) 推荐(0)
摘要: 使用切片的方式实现简单的栈 package main import "fmt" type Element interface{}//可存入任何类型 type Stack struct { list []Element } //初始化栈 func NewStack()*Stack { return & 阅读全文
posted @ 2020-08-29 16:14 海拉尔 阅读(749) 评论(0) 推荐(0)
摘要: 实现简单的线程池,任务放在entry中,线程池开启后会创建相应数目的线程,不断从entry中拿取任务放在work管道中,并且不断从work中取出任务运行 package main import "fmt" var count int type Task struct { myfun func()er 阅读全文
posted @ 2020-08-27 23:11 海拉尔 阅读(845) 评论(0) 推荐(0)
摘要: //存放的数据为Link type Link struct { //内部数据 } //map key放置数据 type Set struct { m map[Link]bool } //获取Set func GetSet() *Set { return &Set{ m: map[Link]bool{ 阅读全文
posted @ 2020-08-19 15:43 海拉尔 阅读(393) 评论(0) 推荐(0)
摘要: 一个文件可以包含多个init函数,此函数无输入和返回值 init函数在main函数之前自动调用 init函数不能被显式调用 init函数只会执行一次,即使被import导入多次 同一个 package 中, 文件名排序靠前的文件中的 init 函数更早运行 程序在main包开始,先进行import其 阅读全文
posted @ 2020-08-19 14:50 海拉尔 阅读(434) 评论(0) 推荐(0)
摘要: git rebase git rebase -i HEAD~3 可以调整几次提交(commit)的顺序,或者去除不想要的提交 git pull git pull --rebase 可以拉取远程合并的时候提交记录为一条线 git commit --amend git commit --amend 修改 阅读全文
posted @ 2020-08-09 21:25 海拉尔 阅读(485) 评论(0) 推荐(0)
摘要: 终端中 fn+向上/向下 翻页 command+向上/向下 跳转到上次执行命令的位置 ls ls -a 显示所有文件包括隐藏 ls -t 按照创建时间排序 ls -l 显示文件读写,归属,内容大小等信息 ls -i 显示文件索引节点号(inode) file 文件名 显示文件类型 stat 文件名 阅读全文
posted @ 2020-07-24 17:30 海拉尔 阅读(112) 评论(0) 推荐(0)
摘要: 使用go get下载很慢,打开gomodule 更改proxy 秒下载 # 启用 Go Modules 功能 export GO111MODULE=on # 配置 GOPROXY 环境变量 export GOPROXY= 链接 参考链接https://goproxy.io/zh/ https://m 阅读全文
posted @ 2020-07-23 10:28 海拉尔 阅读(431) 评论(0) 推荐(0)