- 博客(4)
- 收藏
- 关注
原创 golang 线程模型
1. 基本概念M: 内核线程 P: go 代码片段所必须的上下文环境 G: go 代码片段 调度器: 管理和调度 M, P, G2. 存储容器全局M 列表: 存储所有M的一个单向链表 全局P 列表: 存储所有P的一个数组 全局G 列表: 存储所有G的一个切片 调度器的空闲M列表: 存放空闲M的单向链表 调度器的空闲P列表: 存放空闲P的单向链表 调度器的可运行...
2018-08-30 19:50:37 859
原创 golang 用函数名动态调用函数(包括变参函数)
golang 用函数名动态调用函数(包括变参函数)func main(){ ret1 := Apply(Hello, []interface{}{2,3}) for _, v:= range ret1{ fmt.Println(v) } ret2 := Apply(Format, []interface{}{"hello",44}) f...
2018-08-24 20:07:54 11190
原创 IOData
看项目代码的时候发现写入file的Info不是一个扁平化的list, 所以感觉很奇怪。 就看了一下file的文档 file:write_file(FileName, Bytes) -> ok|{error, Reason} Bytes = iodata() iodata() 文档中是这么定义的: iodata(): iolist()|binary binary():>
2018-08-24 19:59:49 1483
原创 动态规划、分治、贪心、递归
一言以蔽之: dp 和分治 之间的区别就在于是否有重叠子问题 ,如果有那就应该dp 否则就应该分治。 当然如果可以每一步都产生最优解那么就不必dp了, 贪心算法就可以了. 而递归只是一种实现算法的方法.例子 下面分别用 dp, dc(分治法), 贪心来做 leetcode 514. 自由之路 https://leetcode-cn.com/problems/freedom-trai...
2018-08-23 17:53:08 502
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人