二叉樹的定義,特點和分類

2021-10-06 16:38:35 字數 1517 閱讀 7326

下圖是乙個很經典的演算法叫做折半查詢法:

對於在每個階段都是兩種結果的情況時,比如開和關,0和1,真和假,對和錯,正面和反面等等,都適合用樹狀結構來建模,而這種樹其實是一種很特殊的樹,叫做二叉樹。

二叉樹時n個結點的有限集合,該集合或者為空集(空集成為空二叉樹),或者由乙個根節點和兩棵互不相交的,分別稱為根節點的左子樹和右子樹的二叉樹組成。

二叉樹的特點:

一.每個結點最多有兩棵子樹

二.左子樹和右子樹是有順序的,次序不能任意顛倒

三.即使樹中只有一棵子樹,也要區分它是左子樹還是右子樹。例如下圖中,樹1和樹2是同一棵樹,但它們卻是不同的二叉樹

顧名思義,就是樹是斜的。

定義:「所有結點都只有左子樹的二叉樹叫做左斜樹

所有結點都只有右子樹的二叉樹叫做右斜樹,這兩者統稱為斜樹。

特點:每一層都只有乙個結點,結點的個數和二叉樹的深度相同。

線性表的結構可以理解為樹的一種極其特殊的表現形式(斜樹)

滿二叉樹其實就是完美的二叉樹

定義:在一棵二叉樹中,所有分支結點都存在左子樹和右子樹,並且所有葉子結點都在同一層上,這樣的二叉樹稱為滿二叉樹

特點:一.葉子結點只能存在於最下層且所有葉子結點處在同一層

二.非葉子結點的度一定為2

三.在同樣深度的二叉樹中,滿二叉樹的結點個數最多,葉子結點也是最多

完全二叉樹是重點也是理解難點

定義:對一棵具有n個結點的二叉樹按層序編號(層數由上至下,每一層從左至右編號每個結點),如果序號為i(1<=i<=n)的結點與同樣深度的滿二叉樹中編號為i的結點在二叉樹中位置完全相同,所有結點都滿足這個要求的二叉樹則稱為完全二叉樹。

注意:一定要區別滿二叉樹和完全二叉樹,滿二叉樹一定是一棵完全二叉樹,完全二叉樹不一定是滿二叉樹。

案例:

圖一是滿二叉樹

圖二和圖四不是完全二叉樹,因為存在個別對應結點的序號不一樣

圖三是完全二叉樹,因為圖三中所有結點的序號和圖一中所有序號一一對應

二叉樹的特點:

1.葉子結點只能出現在最下兩層。

2.倒數第二層,若有葉子結點,一定都在右部連續位置

最下層的葉子結點一定集中在左部連續位置

3.如果該結點度為1,則該結點只有左孩子

4.同樣結點數的二叉樹,完全二叉樹的深度最小

分類 二叉樹

二叉樹前序遍歷 遞迴 void preorder1 bintree root 遞迴前序遍歷 二叉樹前序遍歷 非遞迴 void preorder2 bintree root 非遞迴前序遍歷 if s.empty 二叉樹中序遍歷 遞迴 void inorder1 bintree root 遞迴中序遍歷 ...

二叉樹分類

二叉樹分類 滿二叉樹 對於國內的滿二叉樹 從圖形形態上看,滿二叉樹外觀上是乙個三角形。從數學上看,滿二叉樹的各個層的結點數形成乙個首項為1,公比為2的等比數列。對於國外的滿二叉樹 滿二叉樹的結點要麼是葉子結點,度為0,要麼是度為2的結點,不存在度為1的結點。完全二叉樹 設二叉樹的深度為h,除第 h ...

二叉樹的分類

二叉樹的分類 滿二叉樹 從高到低,除了葉節點外,所以節點左右節點都存在。完全二叉樹 比滿二叉樹少幾個葉節點,從左向右放子節點。平衡二叉樹 空樹或者它的左右兩個子樹的高度差的絕對值不超過1,並且左右兩個子樹也都是平衡樹。二叉搜尋樹 空樹或者二叉樹的所有節點比他的左子節點大,比他的右子節點小。紅黑樹 不...