二叉樹的概念講解

本篇就大概介紹下二叉樹的基本知識。

1.二叉樹的定義

二叉樹是n(n>=0)個結點的有限集合,該集合或者爲空集(稱爲空二叉樹),或者由一個根結點和兩棵

互不相交的分別稱爲根結點的左子樹和右子樹的二叉樹組成。

2.二叉樹的特點

①。每個結點最多有兩棵子樹。

②。左子樹和右子樹是有順序的。

③。即使樹中某結點只有一顆子樹,也要區分它是左子樹還是右子樹。

3.特殊的二叉樹

斜樹:

每一層都只有一個結點,節點的個數與二叉樹的深度相同。

所有的結點都只有左子樹的二叉樹叫左斜樹。所有結點都只有右子樹的二叉樹叫右斜樹。

線性表結構可以理解爲樹的一種極其特殊的表現形式。

滿二叉樹:

若二叉樹中所有分支結點都存在左子樹和右子樹,並且所有葉子在同一層,這樣的二叉樹稱爲滿二叉樹。

完全二叉樹:

對一棵具有n個結點的二叉樹按層序編號,如果編號爲i(1<=i<=n)的結點與同樣深度的滿二叉樹中編號爲i的結點

在二叉樹中位置完全相同,則這棵二叉樹稱爲完全二叉樹。

注意:滿二叉樹一定是完全二叉樹,但完全二叉樹不一定是滿二叉樹。

4.二叉樹的性質

性質1:二叉樹的第i層上至多有2^(i-1)個結點(i>=1)。

性質2:深度爲k的二叉樹至多有2^k-1個結點(k>=1)。

性質3:對任何一棵二叉樹,若其終端結點數爲n0,也就是葉子結點數是n0,度爲2的結點數爲n2,則n0=n2+1;

性質4:具有n個結點的完全二叉樹深度爲[log2 n]+1.([x]表示不大於x的最大整數)。

性質5:若對一棵有n個結點的完全二叉樹(其深度爲[log2 n]+1)的結點按層序編號(從第1層到第[log2 n]+1層,每層從左到右),對任一結點i(1<=i<=n):

若有i=1,則結點i是二叉樹的根,無雙親;若i>1,則其雙親是結點[i/2];

若有2i>n,則結點i無左孩子(結點i爲葉子結點);否則其左孩子是結點2i。

若2i+1>n,則結點i無右孩子,否則其右孩子是結點2i+1。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章