【数据结构】堆的建立(边输入数据边建立)(给定数字顺序插入)

  • 堆的建立有两种方式,一个向上调整,一个向下调整,这两个得到的结果可能不同
    • 向上调整一般用于边输入数据边建立,是给定数字顺序插入
    • 向下调整一般是将所有结点先加入到一棵完全二叉树中,然后对二叉树的所有非叶子结点进行向下调整(从非叶子结点n/2开始,一直到1)

向上调整(大顶堆为例):

向下调整(以大顶堆为例):先将所有输入得到的数组存储到heap[i]中(构成了一颗完全二叉树,下标从1开始)