ツリーはノードを接続(リンク)して階層構造を表現します。実際の木(tree)を逆さまにした図で表されます。

ノード(接続ポイント)は0個以上の子ノードを持ちます。子ノードを持つノードを親ノードと呼びます。ツリーの頂上にあるノードをルートノードと呼びます。 子ノードを持たないノードはリーフノードと呼びます。

プログラムで表現されるノードは名前と値とリンクを持っています。

ツリーの種類

ツリーは順序木, 無順序木の2つのタイプに分けられます。一般的にツリーといわれるときの構造は順序木です。

順序木 - ordered tree

子ノードを"兄"や"弟"などで区別するツリー構造を順序木(ordered tree)と呼びます。

順序木は本の構造のように章や節の順序を区別する

無順序木 - unordered tree

子ノードを区別しないものを無順序木(unordered tree)といいます。

無順序木は子ノードの順序を区別しない