理解堆排序

  • 堆排序满足条件(不稳定的排序,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)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值