数据结构第4章_刘震
在构造哈夫曼树时,可以设置一个结构数组HuffNode保存哈夫曼树中各结点的信息,根据二叉树的性质可知,具有n个叶子结点的哈夫曼树共有2n-1个结点,所以数组HuffNode的大小设置为2n-1,数组元素的结构形式如下: 3.5 树的应用 3.5.2 堆排序 堆的定义 堆是满足下列性质的数列{r1, r2, …,rn}: 或 {12, 36, 27, 65, 40, 34, 98, 81, 73, 55, 49} 例如: 是小顶堆 {12, 36, 27, 65, 40, 14, 98, 81, 73, 55, 49} 不是堆 (小顶堆) (大顶堆) 思考:倒置小顶堆是否一定是大顶堆? 3.5.2 堆排序 堆排序 思想 ⑴ 以初始关键字序列,建立堆; ⑵ 输出堆顶最小元素; ⑶ 调整余下的元素,使其成为一个新堆; ⑷ 重复⑵,⑶ 次,直到n个元素输出,得到 一个有序序列. 关键要解决⑴和⑶,即如何由一个无序序列建成一个堆? 如何调整余下的元素成为一个新堆? 3.5.2 堆排序 堆排序 调整 ⑴ 将堆顶元素和堆的最后一个元素位置交换; ⑵ 然后以当前堆顶元素和其左、右子树的根结点进行比较(此时,左、右子树均为堆),并与值较小的结点进行交换; ⑶ 重复⑵,继续调整被交换过的子树,直到叶结点或没进行交换为止。 称这个调整过程为筛选。 3.5.2 堆排序 堆排序 调整
您可能关注的文档
- 台技术设计与应用NET第十章V2.ppt
- 员工行为规范管理细则08.doc
- 地理必修一第一、二章复习知识点.doc
- 地理必修3第二章 第四节.ppt
- 城建监察部门实行听证制度要注意的五个问题.docx
- 外国语学院本科生创新学分认定实施细则(终稿).doc
- 多点温度测试.doc
- 东大17秋学期《机械制造工艺学含夹具》在线作业2.doc
- 大学生素质认证办法(2013年2月修订).doc
- 大学生职业生涯规划与就业指导论文 2.doc
- 2026年交通工具内饰设计报告及乘客舒适度研究.docx
- 2026事业单位工勤技能-河南-河南公路养护工四级(中级工)历年参考题库含答案详解.docx
- 2026事业单位工勤技能-河南-河南保健按摩师五级(初级工)历年参考题库含答案详解.docx
- 2026事业单位工勤技能-河南-河南中式面点师三级(高级工)历年参考题库含答案详解.docx
- 2026事业单位工勤技能-河南-河南保育员二级(技师)历年参考题库含答案详解.docx
- 2026事业单位工勤技能-河南-河南兽医防治员二级(技师)历年参考题库含答案详解.docx
- 2026年智能家居生态链报告:市场前景与产业链分析.docx
- 2026事业单位工勤技能-河南-河南保健按摩师四级(中级工)历年参考题库含答案详解.docx
- 2026事业单位工勤技能-河南-河南信号工-机车信号设备维修四级(中级工)历年参考题库含答案详解.docx
- (正式版)DGJ 08-2097-2012 《地下管线探测技术规程》.pdf
原创力文档

文档评论(0)