【java面試】算法篇之堆排序

  一、堆的概念 堆是一棵順序存儲的完全二叉樹。完全二叉樹中所有非終端節點的值均不大於(或不小於)其左、右孩子節點的值。 其中每個節點的值小於等於其左、右孩子的值,這樣的堆稱爲小根堆; 其中每個節點的值大於等於其左、右孩子的值,這樣的堆稱爲大根堆;   二、要點 1.將數組構造成初始堆(若想升序則建立大根堆,若想降序,則建立小根堆) 從最後一個節點開始調整,得到初始堆。   2.堆排序處理 交換堆
相關文章
相關標籤/搜索