理解堆排序

  • 堆排序满足条件(不稳定的排序,o(nlog2^n))
    堆是满足下列性质的数列{r1,r2,r3,r4,r5….rn}:
    小项堆 ri < r2i / ri < r2i + 1
    大项堆 ri > r2i / ri > r2i + 1
    堆排序的思想(大项堆):先建立大项堆,选择关键字最大的序列,与序列中最后一个记录交换,然后再将最后一个元素剪掉,调整为不算最后一个元素的大项堆,再选择前n-1个关键字最大的序列,与序列的倒数第二个元素交换,再将倒数第二个元素剪掉。。。。。依次进行下去。

  • 堆排序涉及的问题

  • 如何从无序列表建立初始堆
    1.建立初始堆:
    <1>将任意一个无序序列建立为一棵完全二叉树
    2.代码实现(java)
posted @ 2017-03-12 11:24  多巴胺二次元式  阅读(185)  评论(0)    收藏  举报