先说说选择排序:
堆排序是对选择排序的改进
算法1,是生成一个传统的最小堆,逐步取树根元素,存入数组
真正的堆排序算法,思想是把A调成一个最大堆,把最大元素跟末尾元素交换,最大堆大小减1,然后调整,知道最大堆只有1个元素。
这里的最大堆跟传统的最大堆区别在于,它的下标是从0开始的,写代码的时候要注意一下。