21(1)刪除 12 後的 heapify 步驟
考點:Heap 的建立與 heapify-up/heapify-down
以陣列表示原 heap 為 [12, 7, 3, 5, 1]。Heap sort 取出根 12 時,把它與最後一個元素 1 交換,12 放到陣列尾端的已排序區,heap 剩 [1, 7, 3, 5],再從根做 heapify(下沉):
- 根 1 的子節點為 7、3,與較大的 7 交換:[7, 1, 3, 5]。
- 1 的子節點只有 5,5 > 1,交換:[7, 5, 3, 1];1 成為葉節點,結束。
結果的 max heap:根 7,左子節點 5、右子節點 3,5 的左子節點 1;整個陣列為 [7, 5, 3, 1, 12](如手寫圖)。
