堆排序思路总结以及算法分析

(一)思路:

堆是一种数据结构,可以把堆看成一个完全二叉树,这颗二叉树满足:任何一个非叶子结点的值都不大于(或小于)其叶子结点的值。如果父节点大孩子小那就是 大项堆,反过来则是小项堆。

堆排序属于选择排序。

基本思想以及步骤

将待排序列构造成一个大项堆(小项堆),此时最大就是堆的根节点,将其与最后一个叶节点交换位置,此时末尾元素就是最大值。接着将剩余的n-1个元素继续构造堆,这样会得到n个元素的最小值,反复执行就可以得到一个有序数列。

(二)代码:

准备工作:

(三)算法以及性能分析:

(四)补充:

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1,基础复苏 2,单项训练 3,综合模拟 从现在开始,10天进行单项训练,10天综合模拟。 听力:语速,反应是两个...
    马草原emmm阅读 2,394评论 2 5
  • 2017年3月10日 周五 阴有小雨 今天是我承诺每日一篇日记的第九篇日记,也是我如实如是记录每天...
    韦炜阅读 3,599评论 1 3
  • 2018年7月1日 星期六日 晴 今天,当我起床后,又在床上呆了一会。可突然我特别想上厕所,可因为昨天马桶堵塞,不...
    福叶子阅读 1,648评论 0 0
  • 当今的时代,造就了许多漂泊在外的男孩女孩们。每当春节过后,一群混迹在各大城市的男孩女孩纷纷收拾行李远离故乡,每当踏...
    可乐鸡真好吃阅读 1,481评论 0 1

友情链接更多精彩内容