Java版八大排序之堆排序

堆排序:是指利用堆這種數據結構所設計的一種排序算法。堆是一個近似完全二叉樹的結構,並同時滿足堆積的性質:即子結點的鍵值或索引總是小於(或者大於)它的父節點。 每個結點的值都大於或等於其左右孩子結點的值,稱爲大頂堆; 每個結點的值都小於或等於其左右孩子結點的值,稱爲小頂堆。 時間複雜度:O (nlgn) 堆排序的工作原理: 假設序列有n個元素,先將這n建成大頂堆 然後取堆頂元素,與序列第n個元素交換
相關文章
相關標籤/搜索