面試問題2 堆排序(正序)

首先堆爲一個徹底二叉樹,所以i父節點的左子節點爲2*i+1,右子節點爲2*i+2,i的父節點爲floor((i-1)/2),知道這個特性有利於計算。數組 堆排序分爲兩步:spa 1.構建大頂堆(既全部父節點都大於他的子節點),雖然不保證堆總體有序,可是頂點必定是全部數中最大的排序 2.for倒序循環數組,每次將定點和最後一個子節點交換(交換後子節點爲有序數組),從新構建剩下的無序數據,而後重複上述
相關文章
相關標籤/搜索