堆排序(最大堆)的理解和實現(Java)

堆的定義 堆是具有下列性質的完全二叉樹:每個節點的值都大於或等於其左右孩子節點的值,稱爲大頂堆;或者每個節點的值都小於或等於其左右孩子的值,稱爲小頂堆。如下圖舉例: 通過堆的定義可知,根節點一定是對中所有節點的最大(小)值。較大(小)的節點靠近根節點(並不絕對,比如上圖小頂堆中60, 40均小於70,但它並沒有70靠近根節點) 按層序方式給節點從1開始編號,則節點之間滿足下列關係: { k i ≥
相關文章
相關標籤/搜索