樹的基本知識

2021-09-25 14:12:51 字數 1568 閱讀 4457

樹是由乙個或多個結點組成的有限集合 t 。 其中:

( 1 )乙個特定的結點稱為該樹的根( root )結點 ;

( 2 )結點之外的其餘結點可分為 m (m ≥ 0 )個互不相交的有限集合 t 1 ,t 2 ,......,t m ,且其中每乙個集合本身又是一棵樹,稱之為根的子樹( subtree )。

(1) 結點的度(degree)

樹中的乙個結點擁有的子樹數稱為該結點的度(degree)。

一棵樹的度是指該樹中結點的最大度數。

度為零的結點稱為葉子(leaf)或終端結點。

度不為零的結點稱分支結點或非終端結點。

除根結點之外的分支結點統稱為內部結點。

根結點又稱為開始結點。

(2) 孩子(child)和雙親(parents)

樹中某個結點的子樹之根稱為該結點的孩子(child)或兒子,相應地,該結點稱為孩子的雙親(parents)或父親。

同乙個雙親的孩子稱為兄弟(sibling)。

(3)祖先(ancestor)和子孫(descendant)

①路徑(path)

若樹中存在乙個結點序列k1,k2,…,ki,使得ki是ki+1的雙親(1≤i路徑(path)或道路。

路徑的長度指路徑所經過的邊(即連線兩個結點的線段)的數目,等於j-1。

注意:若乙個結點序列是路徑,則在樹的樹形圖表示中,該結點序列"自上而下"地通過路徑上的每條邊。

從樹的根結點到樹中其餘結點均存在一條惟一的路徑。

②祖先(ancestor)和子孫(descendant)

若樹中結點k到ks存在一條路徑,則稱k是ks的祖先(ancestor),ks是k的子孫(descendant)。

乙個結點的祖先是從根結點到該結點路徑上所經過的所有結點,而乙個結點的子孫則是以該結點為根的

子樹中的所有結點。

約定:結點k的祖先和子孫不包含結點k本身。

(4)結點的層數(level)和樹的高度(height)

結點的層數(level)從根起算:

根的層數為1

其餘結點的層數等於其雙親結點的層數加1。

雙親在同一層的結點互為堂兄弟。

樹中結點的最大層數稱為樹的高度(height)或深度(depth)。

注意,很多文獻中將樹根的層數定義為0。

(5)有序樹(orderedtree)和無序樹(unoderedtree)

若將樹中每個結點的各子樹看成是從左到右有次序的(即不能互換),樹中任意節點的子結點之間有順序關係,則稱該樹為有序樹(orderedtree);

否則樹中任意節點的子結點之間沒有順序關係,這種樹稱為無序樹(unoderedtree),也稱為自由樹。

注意:若不特別指明,一般討論的樹都是有序樹。

(6)森林(forest)

森林(forest)是m(m≥0)棵互不相交的樹的集合。

樹和森林的概念相近。刪去一棵樹的根,就得到乙個森林;反之,加上乙個結點作樹根,森林就變為一

棵樹。除最後一層無任何子節點外,每一層上的所有結點都有兩個子結點

除最後一層外,每一層上的節點數均達到最大值;在最後一層上只缺少右邊的若干結點。滿二叉樹一定是完全二叉樹,完全二叉樹不一定是滿二叉樹。

樹 基本知識

自由樹 自由樹是乙個連通,無迴路的無向圖.顯然樹是圖的一種.如果乙個無向圖雖然無迴路,但是可能非聯通,那麼這個圖成為森林.森林可以調整為一顆二叉樹 左兒子,右兄弟 森林是m m 0 棵互不相交的樹的集合。令g v,e 為乙個無向圖.則以下6點是等價的.1 g是自由樹 2 g中任意兩個頂點由唯一一條簡...

樹的基本知識

表示法 1.樹形 2.文氏圖 3.凹入 4.括號 結點的度與樹的度 m次樹 結點子樹的個數 非終端節點,分支結點,葉節點 路徑與路徑長度 ki,ki1,ki2,kj,結點數目減1 分支數目 孩子結點,雙親結點,兄弟結點 結點的層次和樹的高度 根節點為第一層,樹的高度。森林 n n 0 個互不相交的樹...

樹的基本知識

樹 樹是一些節點的集合。這個集合可以是空集 若集合不是空集,則樹由根節點r以及0個或多個子樹組成。邊 兩個節點之間的連線就是邊。樹葉 沒有兒子的節點稱為樹葉。節點的度 節點擁有的子樹數稱為節點的度。度 節點的度的最大值稱為樹的度。兄弟 具有相同父親節點的節點稱為兄弟。路徑 從節點n1到節點nk的路徑...