資料結構與演算法(一) 樹的高度和深度的區別

2021-08-05 23:04:45 字數 663 閱讀 3991

對於高度的理解,我們不管他資料結構什麼什麼知識,就拿樓房來說,假如乙個人提問:樓房的高度有好高?我們會下意識的從底層開始往上數,假如樓有6層,則我們會說,這個樓有6層樓那麼高,則提問者就會大概知道樓有多高了。所以高度就是以從下往上對比,這是我們的習慣。而在樹中,樹的高度也是從下往上數,如圖所示

k節點在樹的底層,是乙個葉子節點,則一般定義為k的高度在最低為1,以此類推,o的高度也是為1,p的節點也是為1。m節點是葉子節點o的父節點,從下往上數,m節點高度為2。那麼g節點的高度是多少呢?從g-l的高度為2,從g-m-o節點高度為3,到底g節點高度為多少呢,正確答案是3,請看定義:

高度的定義為:從結點x向下到某個葉結點最長簡單路徑中邊的條數

注意:對於是否是邊的條數這個不清楚,待我後來查證,這個主要是由於其初值是1還是0來確定的,一般都是以1開始

理解了高度,則深度的理解就很容易了,深度是從根節點往下,列如上圖中:b的深度為2。

對於整棵樹來說,最深的葉結點的深度就是樹的深度;樹根的高度就是樹的高度。這樣樹的高度和深度是相等的。

對於樹中相同深度的每個結點來說,它們的高度不一定相同,這取決於每個結點下面的葉結點的深度。

資料結構 樹的高度和深度

結點的高度 從該節點向下分支的葉節點開始自底向上逐層累加。對於高度的理解,就拿樓房來說,我們會從底層開始往上數,假如樓有6層,則我們會說,這個樓有6層樓那麼高。所以高度就是以從下往上對比,這是我們的習慣。而在樹中,樹的高度也是從下往上數,如圖所示 k節點在樹的底層,是乙個葉子節點,則一般定義為k的高...

資料結構(一)樹

是由n 0 個結點組成的有窮集合以及結點之間關係組成的集合構成的結構,是一種一對多的資料結構。特點 1.有且僅有乙個結點沒有前驅結點,該結點為樹的根結點。2.除了根結點外,每個結點有且僅有乙個直接前驅結點。3.包括根結點在內,每個結點可以有多個後繼結點。樹的術語 1.結點的度 該結點擁有的子樹的數目...

資料結構 資料結構探索(一) 樹的綜述

最近研究了mysql的索引結果,mysql的索引結果是使用了b tree的資料結構,了解了結構以後,對索引的功能和使用的一些規則就有了更加深入的了解,原來只是死記硬背規則和策略,現在感覺能知道背後到底是因為什麼。之後因為看到了set物件的元素存入方式,treeset使用的是紅黑樹儲存,來保證元素不會...