我想知道是否有人可以幫我解決這個問題。我正在使用C/C++編程,我需要執行以下操作:插入和刪除陣列中的元素,同時保持要排序的陣列
我給出了一個包含浮點數的排序數組P(最大的第一個)。它通常有一個非常大的尺寸..有時候會保存來自1000萬像素圖像的相關值。我需要迭代數組,直到它爲空。在循環內還有額外的處理。
問題的關鍵是,在循環的開始,我需要從數組中刪除具有最大值的元素,檢查某些條件,如果它們持有,那麼我需要重新插入元素到數組中但在降低其價值之後。但是,我想要在重新插入後對數組進行高效排序。
有人可以指出我這樣做嗎?我嘗試過每次插入時重新排序的幼稚方法,但這看起來非常浪費。
horray for heaps! –
術語'heap'在C和C++中有另一個更常見的含義,更徹底的描述或鏈接將會有所幫助。 –
@Mark True。修訂。 –