数据结构与算法
Christ_Sun
升级打怪!
展开
-
堆排序
参考点击打开链接,学习了下堆排序,资料很多就不多描述了,直接贴代码。/*二叉堆:完全二叉树,即除最后一层外,每层节点数均到达最大值;最后一层只缺少右侧节点(节点都在左边)。性质:对于var tree:array[1..n]of longint;{n:integer;n>=1}(1)若i>1,tree的双亲为tree[i div 2];(2)若2*i<=n,那么tree的左孩子为原创 2015-12-18 16:18:31 · 349 阅读 · 0 评论 -
理解O(log2N)和O(Nlog2N)
O(lgn)的解释是:将一个数据集分成两半,然后将分开的每一半再分成两半,依此类推O(nlgn)的解释是:将一个数据集分成两半,然后将分开的每一半再分成两半,依此类推,在此过程中同时遍历每一半数据以归并排序为例,可以把排序的过程看成一个倒立的二叉树:2 392116 78 46 54 ->未排序原始数组个数8 (2,39原创 2016-10-10 10:53:11 · 31166 阅读 · 1 评论