数据结构中的堆排序算法一. 向上调整算法二.向下调整算法三.堆排序
如果子节点比父节点大,那么则停止这个过程(因为原本的数组就是一个堆,是满足堆的性质的,如果这个数据比其父节点大,那么一定比它的祖先大,所以不用再进行调整),这就是向上调整算法。向上调整算法是由插入数据引出的,而向下调整则是由删除数据引出的。以这课二叉树为例解释一下向上调整算法,此时的child是最后一个节点10,父节点是28(根据子节点和父节点的关系计算,可以看上一篇文章),28比10大,因为是小堆所以要交换二者的值,并将原来28的位置(即parent)赋给原来10的位置(即child)。...