36.最大堆積樹 (Max Heap Tree) 是一個完全二元樹 (Complete binary tree) ,且其特性是每個子樹 (subtree)
的根節點 (root node) 的值一定比該子樹其他節點的值還大。若以陣列表示最大堆積樹,則下列那個陣列不
是最大堆積樹?
(A)100, 99, 98, 97, …, 3, 2, 1
(B)10, 4, 7, 3, 1
(C)451, 102, 217, 58, 101, 218, 17, 10, 9, 8, 7, 6, 5, 4, 3
(D)以上皆是最大堆積樹
答案:登入後查看
統計: A(10), B(20), C(101), D(31), E(0) #840614
統計: A(10), B(20), C(101), D(31), E(0) #840614
詳解 (共 3 筆)
#5158554
小整理
| BST | 最大堆積樹(應用於堆積排序法) |
| 為一二元樹 | 為一完整二元樹 |
| 節點值不可重複 | 節點值可重複 |
| 所有節點均符合:左子<節點<右子 | 所有節點均符合:節點>=所有子 |
| 所有節點亦為BST | 所有節點亦為最大堆積樹 |
| (BST中序走訪=小到大排序) | (最大堆積樹刪除所有節點=大到小排序) |
| 最佳O(1) | 最佳O(n log n) |
| 平均O(log n) | 平均O(n log n) |
| 最差O(n) | 最差O(n log n) |
(最大堆積樹 插入元素:永遠從完整二元樹最後一個葉節點開始插入 刪除元素:永遠從根節點開始刪除 並把完整二元樹最後一個葉節點拉來根節點後 從新排列以符合最大堆積樹規則) |
0
0