學習數據結構--第四章:樹與二叉樹(樹的基本概念、基本術語、性質)

第四章:樹與二叉樹(樹的基本概念)

1.樹的基本概念

首先樹是一種邏輯結構。
**樹:**是n(n≥0)個結點的有限集合,n=0時,稱爲空樹。而任意非空樹應滿足:

  • 1)有且僅有一個特定的稱爲的結點
  • 2)當n>1時,其餘結點可分爲m(m>0個互不相交的有限集合,其中每一個集合本身又是一棵樹,稱爲根結點的子樹

特點: 除根結點外每一個結點都有一個一個前驅結點。每一個結點都有零個或多個後繼結點。

n個結點的樹只有n-1條邊。

2.基本術語

2.1樹的結點

2.2樹的度

度: 樹中一個結點的子節點的個數稱爲該結點的

樹的度: 樹中最大度數稱爲樹的度

A的度:4

2.3樹的分支結點和葉子結點

度大於0的結點稱爲 分支結點 (ABCDE)

度爲0的結點稱爲 葉子結點 (FGHIJKL)

2.4結點的層次、高度、深度

層次: 有的第一層也叫第零層

在這裏插入圖片描述

結點的高度:從葉結點開始向上逐層累加的。例如B結點的高度爲3,他分別經歷了第四層、第三層和第二層。

結點的深度:從根結點自頂向下逐層累加的。

樹的高度(深度)是樹中結點的最大層數。 高度和深度是相同的。

2.5有序樹與無序樹

有序樹
從左到右每一個子樹都是有次序的。

無序樹
從左到右每一個子樹都是無次序的。這種樹稱爲無序樹,也稱爲自由樹

2.6路徑

路徑 樹中兩個結點之間的路徑是由這兩個結點之間所經過的結點序列構成的。

樹中的分支是有向的,即從雙親結點指向孩子結點,所以路徑一定是自上而下的,也就是說E結點是無法到達F結點的,他們之間不存在路徑。
例如:A到E的路徑爲:ABE

路徑長度:路徑上所經歷的個數。

例如:A到E的路徑長度爲:2

2.7森林

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

3.樹的性質

1)樹種結點的個數等於所有結點(不算根結點)的度數加 1

2)度爲m的樹種第i層上至多有m^(i-1)個結點(i>=1)


3)高度爲h的m叉樹至多有(m^h-1)/(m-1)個結點

這個就是等比數列求和,最多就是每一個結點的子結點數都爲m,這個等比數列的公比爲m,首項都是1,根據等比數列1-m爲負數,1-q^n也爲負數,這裏公式就直接調換位置了,結果不變。


4)具有n個結點的m叉樹的最小高度爲logm(n(m-1)+1) 向下取整。

這個就是第三個性質的推論,首先是高度最小,則就是儘量將結點安排在較小的層上面,也就是每一個結點的子結點數儘量都爲m,設(m^h-1)/(m-1)=n,求出m即可,至於結果向下取整,是因爲這個結果計算的不一定爲整數,因爲我們這裏的條件是最小高度,則就是每層結點個數,除了最後一層,都達到最大數,那麼這個最後一層可能就不滿足結點最大數,那麼使用這個公式計算的結果就會出現小數,但是最後一層也是有結點的也算一層,所以向下取整。

關於數據結構的知識,持續更新中,歡迎關注公衆號理木客

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