樹和二叉樹知識要點(期末必考)

2021-10-11 10:59:59 字數 2087 閱讀 1784

樹是由n(n>=0)個節點組成的有限集合(樹中元素通常稱為節點)。n=0的樹稱為空樹

樹形結構是非線性資料結構。

:乙個特殊的節點,它只有後繼結點,沒有前驅結點。

子樹:除根節點外的其他節點分為m個互不相交的結點,其中每個集合為根的子樹。

有序樹:子樹之間對映客觀存在的次序關係(子樹次序不能調換)。

無序樹:子樹之間不存在次序關係,即子樹次序能夠調換。

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

結點:包含了資料元素及若干個指向其子樹的分支。

結點的度:結點的子樹數目或分支個數。

樹的度:在樹中取各結點的度的最大值.

分支結點(又稱非終端結點):度大於零的結點。

葉子結點(又稱終端結點):度為零的結點。

結點的路徑:根結點到該結點所經分支和結點構成結點的路徑。

結點的路徑長度:根結點到該結點路徑上所經分支的數目。

結點的層次:設根結點的層次為1,則其子樹的根結點層次為2:第l層結點的子樹的根結點層次為l+1.

樹的深度:樹中結點(該結點必為樹葉結點)的最大層次。

孩子結點及雙親結點:結點的子樹的根結點稱為該結點的孩子結點,該結點又稱為孩子結點的雙親結點。

兄弟結點:擁有同乙個雙親結點的若干個結點互稱為兄弟結點。

堂兄弟結點:在同一層次上, 但雙親結點不同的若干個結點稱為堂兄弟結點。

祖先結點:根結點到該結點路徑上的所有結點均為該節點的相先結點。

子孫結點:某結點的於樹中所包含的所有結點均為該結點的子孫結點。

二叉樹:n(n>=0)個結點的有限集,當n=0時,二叉樹為空;

當n>0時,二叉樹由乙個根結點及至多兩顆互不相交的左右子樹組成,且左右子樹都是二叉樹。

特殊二叉樹:

滿二叉樹:一顆深度為k的二叉樹若每一層上的結點數都達到最大

完全二叉樹:一顆具有n個結點且深度為k的二叉樹若前k-1層的結點數都達到最大,剩餘的結點在第k層中從左至右連續分布

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

二叉樹的性質2:深度為k的二叉樹至多有2*-1個結點(k≥1)。

二叉樹的性質3:對任意的一棵二叉樹,如果其終端結點數為n0,度為2的結點數為n2,則有n0=n2+1。

二叉樹的性質4:具有n個結點的完全二叉樹的深度為[lbn]+1。

二叉樹的性質5:如果對一棵具有 n個結點的完全二叉樹從1到n對每一結點進行層序編號,則有:

①若i=1,則第i個結點是二叉樹的根,無雙親。若i>1,則其雙親結點的位置是i/2。

②若2i>n,則第i個結點為葉子結點,無左孩子;否則,其左孩子結點的位置是2i。

③若2i+1>n,則第i個結點無右孩子;否則,其右孩子結點的位置是2i+1。

1.先序遍歷(dlr)若樹不空,則先訪問根結點,然後依次先根遍歷各棵子樹。

2.中序遍歷(ldr)

3.後序遍歷(lrd) 若樹不空,則先依次後根遍歷各棵子樹,然後訪問根結點。

4.層次遍歷 :若樹不空,則自上而下自左至右訪問樹中每個結點。

結點的路徑長度定義為:從根結點到該結點的路徑上分支的數目。

樹的路徑長度定義為:樹中每個結點的路徑長度之和。

樹的帶權路徑長度定義為: 樹中所有葉子結點的帶權路徑長度之和。

注:在所有含 n 個葉子結點、並帶相同權值的 m 叉樹中,必存在一棵其帶權路徑長度取最小值的樹,稱為「最優樹」(哈夫曼樹)。

哈夫曼樹定義:為帶權外路徑長度最短的二叉樹。

哈夫曼樹不唯一

樹和二叉樹(知識整理)

1 樹型結構是一類非常重要的非線性結構,樹型結構為 分支結構 一對多 層次結構 2 樹 tree 是n n 0 個結點的有限集合t,若n 0時稱為空樹,否則 1 有且只有乙個特殊的稱為樹的根 root 結點 根是入口 2 若n 1時,其餘的結點被分為m m 0 個互不相交的子集t1,t2,t3.其中...

二叉樹 滿二叉樹和完全二叉樹

二叉樹是一種很重要的非線性資料結構,它是樹結構的一種重要的型別 它不是樹結構的特殊情況 其特徵是每個節點最多有兩個子樹。二叉樹的特點 二叉樹每個結點最多有 2個子結點,樹則無此限制 二叉樹中 結點的子樹 分成左子樹和右子樹,即使某結點只有一棵子樹,也要指明該子樹是左子樹,還是右子樹,就是說 二叉樹是...

校招必考 根據二叉樹遍歷序列確定二叉樹

這道題本質上是要我們根據二叉樹遍歷序列確定二叉樹,只要二叉樹確定了,求它的任何遍歷序列都是易如反掌的。理論基礎 由二叉樹的先序遍歷序列 preordertr erse 和中序遍歷序列 inordertr erse 或由其後序遍歷序列 postordertr erse 和中序遍歷序列均能唯一地確定一棵...