erlang实现堆

来源:互联网 发布:ubuntu 16.04镜像文件 编辑:程序博客网 时间:2024/04/26 00:30

用erlang实现堆

堆概念:一颗完全二叉树, 且根节点的关键字大于或者等于左右子树的关键字值。

erlang实现的比较好的一个开源代码

qhool/heap
使用tuple来实现
支持的接口 效率
1. from_list to_list(sorted)
2. min max
时间复杂度 o(1)
3. take_min, take_max(移去)
时间复杂度 o(logn)
4. insert
时间复杂度 o(logn)
5. new (create a new tuple)
时间复杂度 o(1)
6. append (批量增加)

0 0
原创粉丝点击