數據結構之堆

堆的定義

堆是一棵完全被填滿的二叉樹,可以的例外是在底層,底層上的元素從左到右填入。這樣的樹被稱爲完全二叉樹。堆有兩種情況,一種是大堆,就是最大元素在最根部的,一種是小堆,就是最小元素位於最根部的。下面是一棵完全二叉樹的結構圖:
                                           

堆的性質

堆可以使我們想要的操作得到快速的執行,爲了達到快速執行的目的,一般來說堆的最小元應該在根上,當我們要考慮任意子樹也應該是堆,那麼任意節點就應該小於它的所有後裔。這就是堆的性質。這樣可以根據堆的性質,可以在根處找到最小的元素,根據堆的結構我們可以將堆定義成大堆或者小堆:大堆表示位於結點的元素要大於其所有的子結點,小堆表示位於結點的元素要小於其所有的子結點
發佈了109 篇原創文章 · 獲贊 39 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章