算法 之 堆 - 創建堆

給出一個有n個元素的數組A[1...n],要創建一個包含這些元素的堆,可以這樣進行:從空的堆開始,不斷插入每一個元素,直到A完全被轉移到堆中爲止。因爲插入第j個鍵值用時O(log j),因此用這種方法創建堆棧的時間複雜性是O(n log n)。   我們知道對應於堆H[1...n]的樹的節點可以方便地以自頂向下、從左到右的方式從1到n編碼。在這樣編碼之後,可以用下面的方法,把一棵n個節點的幾乎完全
相關文章
相關標籤/搜索