木構造(tree structure)
階層関係(上下関係)を表現するためのデータ構造
例)
UNIX,WindowsのOSでの階層ディレクトリ
-
1つの節は、それ自体が木である。この木に含まれるただ1つの節が、この木の根である。
-
k個の木T1〜Tkがあり、それぞれの根を節n1〜nkとする。
節nを節n1〜nkの親にすると、節nを根とする新しい木Tが得られる。
このとき、木T1〜Tkは、木Tの部分木(subtree)であるという。
部分木の根n1〜nkは、節nの子であるという。
&attachref
キーワード
-
親(parent),子(child)
節の階層関係(上下関係)
-
葉(leaf),端節(terminal node),外部節(external node)
子をもたない節
-
非終端節(non-terminal node),枝節(branch node),内部節(internal node)
葉以外の節
-
部分木(subtree)
特定の節の子を根にする木
-
先祖(ancestor),子孫(descendant)
ある節から、根に向かって(上方に)節をたどるとき、途中に出現する節
-
レベル(level)
根を0として、階層をたどる回数
順序木/無順序木
-
順序木(ordered tree)
兄弟間で左が兄、右が弟という順序づけを行った木
-
無順序木(unorderd tree),有向木(oriented tree)
兄弟間に順序の無い木
参考文献
-
定本 Cプログラマのためのアルゴリズムとデータ構造(近藤嘉雪,ソフトバンククリエイティブ,1998)
最終更新:2011年03月04日 14:13