バイナリツリーのスレッドディスカッション

スレッド・バイナリ

  1. バイナリツリー走査の前に言えば、ノードの特定の規則(一次、順序または後続)に基づいて、バイナリツリートラバーサルは、線形二進シーケンスに配置されています。これは実際に線状構造非線形動作、(最初のものと最後の外側を除く)各ノードとこれらの配列における唯一の後継者又は前身です。

  2. しかし、時にストレージ構造のバイナリリストは、唯一の子ノードについての情報を見つけるために、前駆体と後続ノード情報を取得することはできません比較的簡単な方法は、各ノードに2つの以上のポインタドメイン構造、その前駆体、その後継の後継・ポインタ・フィールドに記憶された情報保存前駆ドメインポインタ情報を付加することです。しかし、これは、記憶密度を低減し適当ではありません。

  3. もう一つの重要な特徴は、バイナリのリストを使用することである:N + 1は、リンクリスト内のn進のノードに空の鎖ドメインを含んでいなければなりません。私たちは、前任者と後継者を保存するには、このチェーンのn + 1空のフィールドを使用することができます。代わりに、リーフノードの我々はトラバーサル機能に基づいて、その前任者または後継者に来ることができます。

  4. などとして提供次のノードが左の部分木を持っている場合、それはlchildフィールドは、その前身にそうでなければ別のlchildドメインポインティングをその左の子を示し、同じトークンをノードが右の子を有する場合、それは、フィールドがその右の子を示し、またはrchild別のrchildフィールドは、その後継者を指します。もちろん、我々はLTAGとrtagのポイントはまだ周りの子を区別するために2つのフラグを追加する必要があり、次のように、ノードが構成されています:

    lchild LTAG データ rtagの rchild

    LTAG = 0(lchildドメインポイントが左の子ノード)
    LTAG = 1(前駆lchildドメインポイントノード)
    RTAG = 0(rchildドメインポイントが右の子ノード)
    RTAG = 1(以降rchildドメインポイントノードへ)

  5. このようなバイナリ構造の上記のリストにトレールリストと呼ばれる二分木記憶構造としてノードから構成される。前記手がかりと呼ばれる先行および後続のポインタポイントは、対応するバイナリは呼ばねじバイナリ

  6. 次の図に示す二分木の配列と実線(左及び右サブツリーを指し示す)ポインタである配列リスト、そのリード線、破線合図(先行および後続の点)。何とかにそれを作るために、バイナリツリートラバーサル順序でバイナリプロセスが呼び出されたスレッドスレッド

  7. 我々はトレイルバイナリツリーをトラバースしたい場合は、シーケンスの最初のノードを見つけ、その後、後継者が空になるまで、後続ノード、全長を見つけるために有効にする必要があります私たちがここで議論する必要がある後続ノードを発見する方法。

  8. 図に観察された、葉を直接その後継向かっrchildドメインノードではなく、図の再結合(ルートが左右)法の先行順に従って、後続ノードを残し、上に描画することができ、その後の非リーフノードでありますその右の部分木のトラバース配列、すなわち、最も左、右下のサブツリーのノードの最初のノード。逆に、前駆体の法律が注文手がかり種内のノードを見つけることである:左フラグが1、前任者に次にlchildドメイン・ポイント、その前身、すなわち左サブツリーの左サブツリー順トラバーサルに別段の最後のノードである場合右端の下位ノード。

  9. 同様に、以下に示すように、後続の一次又は後続のねじバイナリノードを検索する後続ノードを見つけるために後部のねじバイナリシーケンスであり、それはまた、十分に理解されています。

  10. バイナリツリーや外観を横断する際に、多くの場合、キューリストストレージ構造として使用するために、使用して前駆体と後継ノードが必要。

  11. 時には、便宜上、ストレージ構造は、線形テーブルをモデル、歩道上の二分木リストは、ヘッダノード、及び許容lchildバイナリツリーのルートドメインポイント、先行順rchildドメインアクセスポイントの最後のノットを追加します点(通信頭部と尾部、左の子としてルートノードセットのヘッドノードは、それがドメインrchildテール・ノードをリンクする必要があるため、リンク程度);一方、その結果、二分木のモチーフ配列の最初のノードlchild領域ポインタと第1のノードに最後のノードrchildドメインポイントのポインタ(最後の前駆体と第1ノード後続ノードは、ヘッドノードの配列です)。双方向キューリストの確立がバイナリであるようにそれは前駆体は、最後の結び目からトラバースに沿って点灯させることができ、いずれかの最初のノードから旬の後継者からのトラバースに、です。

发布了77 篇原创文章 · 获赞 19 · 访问量 1万+

おすすめ

転載: blog.csdn.net/qq_42932834/article/details/93891513