排序算法之堆排序

堆的定義: 堆實際上是一棵完全二叉樹。 堆滿足兩個性質: 堆的每一個父節點都大於(或小於)其子節點; 堆的每個左子樹和右子樹也是一個堆。 堆的每個左子樹和右子樹也是一個堆。 堆的分類: 堆分爲兩類: 最大堆(大頂堆):堆的每個父節點都大於其孩子節點; 最小堆(小頂堆):堆的每個父節點都小於其孩子節點; 公式來描述一下堆的定義就是: 大頂堆:arr[i] >= arr[2i+1] && arr[i]
相關文章
相關標籤/搜索