从最后一个非叶子结点开始从后往前进行调整,保证了根下的所有子树都是最大堆,最后对根进行调整,使整棵二叉树为最大堆,保证了根结点为整棵数的最大值点,完成了建堆的过程,再将根结点跟最后一个结点进行交换,如此反复操作,则堆排序就完成了,其中堆排序的过程采用了满二叉树的概念。