0

平衡二分探索木のノードを O(log n) 時間で更新する方法はありますか?

各ノードにインデックス付きオブジェクトが関連付けられているバランスの取れたツリーがあるとします。したがって、ノード 1 はオブジェクト 1 を指し、ノード 2 はオブジェクト 2 を指す、というようになります。

ツリーに 100 個のノードがあり、誰かが 2 番目のノードを削除することを決定した場合、残りのノードを更新して、ノード 3 がノード 2 を指すようにし、ノード 4 がノード 3 を指すようにする必要があります。

ただし、この方法では O(n) 時間がかかります。

これを O(log n) 時間でどのように行うことができますか?

4

2 に答える 2

0

そのプロパティは、ツリーよりもリンクされたリストのように聞こえます。ただし、二分探索木での削除はO(h)、木の高さです。バランスが取れているので、これはO(log n).

于 2013-10-19T19:57:30.897 に答える