排序算法之堆排序及其C語言代碼實現

概述:堆排,其實是一種選擇排序,只不過採用了堆這種數據結構,利用這種數據結構,使得在每次查找最大元素時,直接選取堆頂元素,從而時間大大縮短,相對簡單選擇排序算法來講,比較高效。 堆排序算法可描述以下: 1.將待排元素依次存入數組,該數組即爲一顆徹底二叉樹; 2.從最後一個非葉節點開始遞減,逐次將每一個相應的二叉樹調整成最大堆,最後,整個二叉樹即爲最大堆; 3.交換堆頂元素與堆尾元素,調整新的堆爲最
相關文章
相關標籤/搜索