排序算法(四):堆排序(Heap Sort)

堆排序是一种树形选择排序,是对直接选择排序的有效改进。 基本思想: 堆的定义如下:具有n个元素的序列(k1,k2,...,kn),当且仅当满足 时称之为堆。由堆的定义可以看出,堆顶元素(即第一个元素)必为最小项(小顶堆)。 若以一维数组存储一个堆,则堆对应一棵完全二叉树,且所有非叶结点的值均不大于(或不小于)其子女的值,根结点(堆顶元素)的值是最小(或最大)的。如: (a)大顶堆序列:(96, 8
相关文章
相关标签/搜索