グラフ理論では、閉路のない連結グラフを木といいます。
グラフは辺(edge)で連結された頂点(vertex)の集合です。 辺は頂点の組で表されます。 組になる頂点に順序があれば有向グラフ、なければ無向グラフといいます。 ある頂点から他の頂点にいたる辺の列をパスといいます。 自分自身に戻ってくるパスが閉路(loop)です。 グラフに含まれる任意の2頂点にパスが存在する場合、連結グラフといいます。
右の図では、2-4-5-6-2 という閉路がありますが、このどこかを切れば木になります。
コンピュータ・サイエンスにおける木は、階層をもった節 (節点、ノード node)の集まりです。
階層は、ノードの親子関係で表現されます。 木には根(root)と呼ばれる親のないノードが1つあります。それ以外のノードには親が1つあります。 各ノードには、子ノードがなくても、いくつあってもかまいません。 子のないノードを葉(leaf)と呼びます。
木を図示する場合、親ノードを上に、子ノードを下に書き、線(枝という)で結びます。 したがって根が上に、葉が下になります。
右の図では、オレンジ色のノードが根、空色のノードが葉です。
ノードから根までの段数(枝の数)をそのノードの深さといいます。 深さの最大値を木の高さといいます。 右の図の木の高さは3です。
木の形やノード間の制約によって様々に分類されます。
グラフで表現すると右図のようになります。
(A (B C D) E F G)
|
あるいは | ||||
このビューは javax.swing.JTreeでサポートされます |
Top Page
更新日:2006-02-18