container
该包实现了三个复杂的数据结构:堆,链表,环。 这个包就意味着你使用这三个数据结构的时候不需要再费心从头开始写算法了。
堆
这里的堆使用的数据结构是最小二叉树,即根节点比左边子树和右边子树的所有值都小。
go 的堆包只是实现了一个接口,我们看下它的定义:
type Interface interface {
sort.Interface
Push(x interface{}) // add x as element Len()
Pop() interface{} // remove and return element Len() - 1.
}