バイナリ検索ツリー(理解)

   バイナリ検索ツリー(バイナリ検索ツリー)、(また:バイナリ検索ツリー、バイナリ・ソート木)空の木、または以下の特性を有するいずれかであるバイナリツリーを:サブツリーが空でない残っている場合は、左すべてのサブツリー・ノードの値は、ルートノードの値未満であり、その右側のサブツリーが空でない場合、右の部分木、根の値よりも大きい全てのノード、その左、彼らはまた、右のサブツリーたバイナリ・ソートツリー

 

 バイナリツリートラバーサル3がある:

(1)最初の(ルート)(ルートについて)プレオーダー

(2)(根)(左右ルート)プレオーダー

(3)(根)プレオーダー(ルート程度)

の例では、 :

 

 



まず(ルート)(ルートについて)先行順走査:ABDHEICFJKG

(ルート)先行順走査(左と右の根)で:DHBEIAJFKCG

(ルートについて)(ルート)先行順走査後:HDIEBJKFGCA

    例えば、後に(root)の順トラバーサル、毎回木の左部分木の最初の横断、そして右のサブツリーがツリーを走査し、最後にルートを横断し、というように、ツリーの完全なトラバーサルまで。

    加えて、提案がある:バイナリツリートラバーサルシーケンスの任意の種類を考えると、それは一意のバイナリツリーを対応して決定することができません。しかし、バイナリツリートラバーサル順序及び任意の他の配列トラバーサルかどうかを知るために、二分木を一意に決定することができます。

実施例1:既知の2進シーケンス後順のdabec、配列先行順debac、その配列の前順走査(cedba)。

debacの:(1)予約購入

後順:dabec

ノードの最後のシーケンスの後順トラバースがルートノードであるルートノードCが発見されました。

シーケンスの途中でルートノードトラバーサル順序は、その左の部分木は右、右サブツリーで、残されます。したがって、配列先行予約を見ることができるから、唯一の左の部分木のルートノードCは、権利サブツリーが存在しません。

 

(2)先行予約:デバの

後順:DABE

ノードの最後のシーケンスの先行順走査がルートされた後、サブツリーを左E Cのルートを理解されたいです。

シーケンスの途中でルートノードトラバーサル順序は、その左の部分木は右、右サブツリーで、残されます。そのため、シーケンスの先行順から右のサブツリーがBAで、左の子ノードのルートは、eがdと、見ることができます。

 

(3)先行予約:BAの

後順:ABは

配列B eの後順トラバーサルルート右サブツリーを理解しました。中央列の先行順は、ルートノードbの右の子で、見ることができます。

ツリーは次のよう:

 

:より転載https://blog.csdn.net/qq_34840129/article/details/80619761

 

その他のフォローアップ完成する。https://www.cnblogs.com/mcomco/p/10184033.html

おすすめ

転載: www.cnblogs.com/-citywall123/p/11456991.html