从最大堆转换为最小堆

Convert from max heap to min heap

得到这个堆:

         10
        /  \
       9    8
      / \  / \
     7  6  5  4
    / \ /
   3  2 1

我将展示从最大堆转换为最小堆时的每个步骤。我不确定我该怎么做,有什么帮助吗? 谢谢。

尝试按级别遍历树,从最低节点开始
如果你的堆用数组表示,那就简单了
1. 步骤
比较 1 和 6,并切换:

      10
     /  \
    9    8
   / \  / \
  7  1  5  4
 / \ /
3  2 6

下一步 - 比较 2 和 7(和切换):

      10
     /  \
    9    8
   / \  / \
  2  1  5  4
 / \ /
3  7 6

下一步 - 比较 3 和 2(和 NOswitching):

      10
     /  \
    9    8
   / \  / \
  2  1  5  4
 / \ /
3  7 6

下一步 - 比较 4 和 8(和切换):

      10
     /  \
    9    4
   / \  / \
  2  1  5  8
 / \ /
3  7 6

等这应该创建最小堆