0

Cでヒープデータ構造を実装する必要があります。調査を行っているときに、buildHeap()、constructHeap()を使用して配列をヒープに変換している人がいます。私の質問は、これらの関数を実装する代わりに、ヒープに追加する必要があるたびに、新しく追加されたアイテムに対してpercolateDown()を呼び出すことができますか?

ありがとう!

4

1 に答える 1

3

ヒープは線形時間で構築できますが、提案するアプローチには O(N log(N)) 時間が必要です。パフォーマンスを向上させるために、別の関数でヒープを構築することをお勧めします。

于 2012-10-01T06:53:10.507 に答える