数据结构教学课件:第10章_排序B.pptVIP

  • 6
  • 0
  • 约8.77千字
  • 约 40页
  • 2021-11-02 发布于安徽
  • 举报
* 基于初始堆进行堆排序的算法步骤: 堆的第一个对象r[1]具有最大的关键码,将r[0]与r[n]对调,把具有最大关键码的对象交换到最后; 再对前面的n-1个对象,使用堆的调整算法,重新建立堆。结果具有次最大关键码的对象又上浮到堆顶,即r[1]位置; 再对调r[1]和r[n-1],然后对前n-2个对象重新调整,…如此反复,最后得到全部排序好的对象序列。 * 08 25 21 25* 16 49 交换 1号与 6 号记录 r[0] r[n] 49 25 25* 21 16 08 1 2 3 4 5 6 49 25 21 25* 16 08 初始最大堆 25 25* 16 21 1 3 6 5 4 2 08 49 例:对刚才建好的大根堆进行排序: * 16 25* 21 08 25 49 交换 1号与 5 号记录 08 25 21 25* 16 49 从 1 号到 5 号 重新 调整为最大堆 08 25 25* 21 16 49 1 2 3 4 5 6 16 25* 08 25 21 49 1 3 6 5 4 2 08 25 25* 08 25 25* 21 08 16 49 * 08 16 21 25* 25 49 交换 1 号与 4 号记录 25* 16 21 08 25 49 从 1号到 4号

文档评论(0)

1亿VIP精品文档

相关文档