符號表示
資料 | ||
---|---|---|
整數序列 | A |
輸入 | ||
---|---|---|
輸入整數序列。 | ||
建立堆積 | ||
對子樹進行 Down Heap。 | downHeap(A, i) | |
互換與 Down Heap | ||
由根節點開始進行 Down Heap。 | downHeap(A, 0) | |
將根節點與堆積尾端的值互換。 | swap(A[0], A[heapSize-1]) | |
縮小滿足堆積性質,但尚未排序的範圍。 | 區間[0, heapSize) | |
輸出 | ||
輸出排序完成的整數序列。 |
演算法動畫
輸入
建立堆積
互換與 Down Heap
輸出
資料 | ||
---|---|---|
整數序列 | A |
輸入 | ||
---|---|---|
輸入整數序列。 | ||
建立堆積 | ||
對子樹進行 Down Heap。 | downHeap(A, i) | |
互換與 Down Heap | ||
由根節點開始進行 Down Heap。 | downHeap(A, 0) | |
將根節點與堆積尾端的值互換。 | swap(A[0], A[heapSize-1]) | |
縮小滿足堆積性質,但尚未排序的範圍。 | 區間[0, heapSize) | |
輸出 | ||
輸出排序完成的整數序列。 |
輸入
建立堆積
互換與 Down Heap
輸出