問題詳情

36. Heap 這種資料結構有很多用途,下列何者不是它的特性之一?
(A) 完全樹
(B) 每個節點最多只有兩個子節點
(C) 先進後出
(D) 父節點總是大於(或總是小於)子節點

參考答案

答案:C
難度:適中0.5
書單:沒有書單,新增

用户評論

洪小漢】評論

堆積排序法(Heap Sort)堆積排序法的概念堆積排序有法兩個大步驟,第一個是把要排序的陣列製作成「最小堆積」(Min Heap)或是「最大堆積」(Max Heap)。如果要將陣列遞增排序的話就使用最大堆積;如果要遞減排序的話就使用最小堆積。接下來的步驟就是利用最大堆積和最小堆積來進行排序,方法和建立最大堆積或是最小堆積時是幾乎一樣的。什麼是完全二元樹?完全二元樹是一種二元樹,它只允許最後一層(最底下那層)的節點數量可以不必填滿(若頂層是第1層,則第n層的最大節點數量為2n-1)。例如以下結構即為完全二元樹:https://magiclen.org/heap-sort/先進後出,是堆疊的特性

黃珠娟】評論

每個 node 最多有兩個 child同一階層要由左到右排列,不能跳過如果是 max-heap 的話,每個 node 都要比自己 child 大,如果是 min-heap 反之(下圖是 max-heap)(max-heap)root 就會是整個 heap 的最大值先進先出