Data-structures-algorithms-tree-traversal
提供:Dev Guides
データ構造とアルゴリズム-ツリートラバーサル
トラバーサルは、ツリーのすべてのノードを訪問するプロセスであり、それらの値も出力する場合があります。 すべてのノードはエッジ(リンク)を介して接続されているため、常にルート(ヘッド)ノードから開始します。 つまり、ツリー内のノードにランダムにアクセスすることはできません。 私たちがツリーを横断するために使用する3つの方法があります-
- 順番通りのトラバーサル
- 先行予約のトラバーサル
- 注文後のトラバーサル
一般に、ツリーを走査して、ツリー内の特定のアイテムまたはキーを検索または検索するか、ツリーに含まれるすべての値を印刷します。
順番通りのトラバーサル
この走査方法では、左のサブツリーが最初に訪問され、次にルート、次に右のサブツリーが訪問されます。 すべてのノードがサブツリー自体を表す場合があることを常に覚えておく必要があります。
バイナリツリーが in-order で走査される場合、出力は昇順でソートされたキー値を生成します。
アルゴリズム
先行予約のトラバーサル
この走査方法では、ルートノードが最初に訪問され、次に左のサブツリー、最後に右のサブツリーが訪問されます。
アルゴリズム
注文後のトラバーサル
このトラバーサル方式では、ルートノードが最後にアクセスされるため、名前が付けられます。 最初に左のサブツリー、次に右のサブツリー、最後にルートノードを走査します。
アルゴリズム
ツリートラバースのC実装を確認するには、リンクしてください:/data_structures_algorithms/tree_traversal_in_c [ここをクリック]。