2010-12-01 9 views
6

三元検索ツリーの「バランスを取る」方法は?ほとんどのtst実装ではバランス調整は扱われていませんが、最適な順序で挿入することをお勧めします(制御できません)。三元検索ツリーのバランスを取る

+0

検索ツリーのサイズはどれくらいですか? –

+0

4文字から20文字までの数千語。それが大きいか小さいかはわかりませんが、それは私にとっては大きなものです。 – uroc

+0

ある時点までツリーを投げ捨て、最適な順序で構築されたツリーに置き換えるのが良い方法です。時間を惜しまない場合は、ミリ秒かかるでしょう。 –

答えて

4

ドブス博士の記事Ternary Search Treesについて:D.D. Sleator and R.E. Tarjanは、「自己調整バイナリ検索木」(ACMのジャーナル、1985年7月)の三元探索木のための理論的な平衡化アルゴリズムを記載している。このペーパーのオンライン版は、お気に入りの検索エンジンで見つけることができます。

0

バイナリ検索ツリーの一般化はB-Treeです。それはそれを行う唯一の方法ではありませんが、一般的な方法です。

挿入または削除がツリーのバランスを崩してしまう場合、それは、要素またはスペースを隣接ノードから盗みます。それでも木をバランスよく保つには足りない場合は、その高さを変更して部屋を作る。

+0

OPは** 3つの**検索ツリーについて話します。 – hmuelner

+0

私は、1-2のBツリーが3つのツリーとどのように違うかについてはっきりしていません。それを私に説明できますか? – SingleNegationElimination

+1

Bツリー(通常)には、ノード内の完全キーが含まれています。ターナリ検索ツリーでは、キーはノードへのパスによって定義されます。 – hmuelner

1

この記事をお読みください。

によって

を「ガーダハニーバドル*およびB.ジョン・オオメン†」を 「3分探索の自己調整は、条件付きのローテーションおよびランダム化ヒューリスティックを使用しようとします」それがお手伝いします自己調整とバランスのとれたTSTを理解することになります。

関連する問題