堆排序

堆排序是利用堆這種數據結構而設計的一種排序算法,堆排序是一種選擇排序,它的最壞,最好,平均時間複雜度均爲O(nlogn)

堆分爲大根堆和小根堆,是完全二叉樹。每個節點的值都不大於其父節點的值爲大頂堆,每個節點的值都不小於其父節點的值爲小頂堆。

這裏寫圖片描述
公式化描述就是:
大頂堆:arr[i] >= arr[2i+1] && arr[i] >= arr[2i+2]

小頂堆:arr[i] <= arr[2i+1] && arr[i] <= arr[2i+2]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章