非線形構造

非線形構造

 ツリー

   ツリーの定義

    プロフェッショナルの定義:唯一つのルートノードを1が呼ばれています

          2.互いに素サブツリーいくつかがありますが、木自体がサブツリーです

    人気の定義:1.ツリーは、ノードとエッジで構成されています

          2.各ノードは一つだけの親を持っているが、複数の子ノードを持つことができます

          3.しかし、ノードへの1つの例外があり、ノードに親がない、ルートノードと呼ばれています

             用語集:深さ:ルートノードからの深さと呼ばれる層の下に(ルートノードは第一層です)

                        リーフノード:ノードが子を持ちません

                                非ターミナルノード:実際には非リーフノード

         学位:子ノードの数が呼び出されます

   分類ツリー

    一般的なツリー:ノード番号の任意の子が限定されるものではなく、

    バイナリツリー:ノードの子ノードの任意の数の2の最大値、および子ノードの位置を変更することはできません

      カテゴリー:一般的なバイナリツリー

          完全なバイナリツリー:ツリーが前提の層数を増加させることなく、あなたがバイナリツリーのノードを追加することはできません完全なバイナリツリーです

          バイナリツリーを完了します。あなたは右端のいくつかのノードの底部のみの連続した完全なバイナリツリーを削除する場合は、バイナリツリーの形成は完全2分木であります

    ばらばらの木のNセット:森

  メモリツリー

    バイナリツリーのストレージ

      連続して格納完全二分木[]

        長所:ノードの親と子ノードを検索し、高速(決意を含むが子ノードを持ちません)

        短所:大きなメモリ空間を消費

      チェーン店

    一般的な店舗ツリー

      両親表記:父簡単にノードを尋ねます

      子供表記:便利なノードを祈ります

      親は、子供たちが表記:求めている親と子ノードは非常に便利です

      バイナリ表記:

       格納するために、通常のバイナリツリーに変換

       変換方法:

        任意のノードいることを保証するために、シーク

          その最初の子に左ポインタフィールドポイント

          そのいとこに右ポインタフィールドポイント

        限り、この条件が満たされるように、我々は、バイナリツリーに普通の木を回すことができます

        一般的なバイナリツリーに変換することは必ずしも右のサブツリーではありません

 

    森林の保存:最初のバイナリツリーに森を変換し、バイナリツリーに保存されています

  オペレーティング

    トラバーサル

      予約限定:最初のルートを訪問し、その後、右のサブツリーを前順、左サブツリー最初の注文をご覧ください。

      予約限定:行きがけ左サブツリー、そして、ルートノードを訪問し、その後、右のサブツリーを前順

      後順:後順左のサブツリーは、右部分木をトラバースするために、そして、ルートノードを訪問します

おすすめ

転載: www.cnblogs.com/spore/p/11093129.html
おすすめ