[資料結構] 堆積(Heap) - iT 邦幫忙::一起幫忙解決難題,拯救IT ...
文章推薦指數: 80 %
2019 iT 邦幫忙鐵人賽堆積 (Heap),是一種特殊的完全二元樹,而堆疊不一樣,是完全不同的概念。
有分兩種,一種是最小堆積,另一種是最大堆積。
如下圖,完全二元樹所有的父節點都比子節點要小,就屬於最小堆積。
若完全二元樹所有的父節點都比子節點要大,則為最大堆積。
(以下用最小堆積來討論。
)
怎麼建立呢?首先將資料存入到完全二元樹當中,再來一一調整以符合堆積的特性。
從最後一個節點開始,依次判斷以這個節點為根的子數是否符合最小堆積的特性。