0

たとえば、左の1つのブランチに降順に並べられた値10,9 ... 1のノードがある場合、ツリー上でローテーションを実行してバランスの取れたAVLツリーにするにはどうすればよいでしょうか?私は1回の右回転を繰り返すことを考えていましたが、誰かがここで一連の手順を示すことができましたか?ツリーを単一ブランチとどのようにバランスさせるか?

+0

単一の左ブランチツリーを逆にして1つの右ブランチツリー(ブドウと呼ばれます)を作成し、次にブドウをツリーに変換することができます。 [rebalance tree.pdf](http://web.eecs.umich.edu/~qstout/pap/CACM86.pdf)にリンクしてください。 – rcgldr

答えて

2

根元で5が上になるまで回転させます。ツリーは現在上下逆さまです。次に、2つのサブツリーのそれぞれについて同様の操作を行います。

関連する問題