Good, better, best. Never let it rest.

1
2
3
4
5
/**
* 循环实现
* 注意:1.low<=high,而不是 low<high
* 2.low和high更新 low=mid+1,high=mid-1 如果写成 low=mid 或者 high=mid,就可能会发生死循环
*/
阅读全文 »

1
2
3
4
5
6
7
8
堆排序步骤:
1)将无序序列构建一个堆,升序则大顶堆,降序则小顶堆
2)将堆顶元素与末尾元素交换,将最大元素沉到数组末尾
3)重新调整结构,使其满足定义,反复执行调整+交换步骤,直到整个序列有序
重点:
要从最后一个非叶子节点开始排序

粘贴代码如下:
阅读全文 »