2011-10-30 4 views
3

私はAVLツリーの割り当てに取り組んでいます。私はその定義について素早く質問しています - ソートされたリストが与えられており、O(n)時間にAVLツリーを生成する必要があります。私はこれを完了しました(StackOverflowの他のヘルプのおかげで!)が、私の結果は、有効なAVLツリーは、提供された例の結果とは異なります。同じソートリストから複数のAVLツリーを生成できますか?ソートされたリストからの複数のAVLツリー?

ありがとうございます!

答えて

3

はい。ノードが2つしかないツリーの縮退の場合を考えてみましょう。この場合、いずれかのノードがルートになり、もう一方のノードはリーフになります。 2つは全体的なバランスがとれる限り同等です。

enter image description here

+0

完璧な、これは私が行方不明だった小さなコンセプトでした。これらの木々で学ぶことがたくさんあります!手伝ってくれてどうもありがとう! – Jake

2

はい、例えば、これらは< 1,2,3,4,5-ための2本の可能なAVL木である>:

(2 1(3 4 5))

そして

(4(1 2 3)5)(T1とT2)は、ルートA、左側のツリーT1と左右T2とツリーを示し