以這棵樹來說幾個基本的概念。
結點的度:乙個結點的子樹數目稱為該結點的度。(例如結點1的結點的度為3,結點2的結點的度為3,結點3的結點的度為0)。
樹的度:所有結點度當中,度最高的乙個。(上圖樹的度是3)。
葉子結點:上圖應該是:3、5、6、7、9、10
分之結點:除了葉子結點,其他的都稱為分之結點,和葉子結點構成互補的關係。(1、2、4、8)
內部結點:分之結點除了根結點以外的。(2、4、8)
父結點:如5號結點就是2號結點的子結點。
子結點:2號結點是5號結點的父結點。
兄弟結點:5、6、7稱為兄弟結點,出自同乙個父親2號結點。
這三個概念是乙個相對的概念。
層次:0層、1層、2層、3層。
還有乙個公式就能做題了:總結點=所有度結點的和+1(應該是父結點)
樹的遍歷:
我們還是根據這圖來看看樹的三種遍歷。
前序遍歷:先從根部出發,然後由左向右,一顆一顆樹來完成遍歷。先訪問根再訪問葉子結點,這就是我畫出來的前序遍歷圖,箭頭的方向表示遍歷的順序。a為起點。
結果是:1、2、5、6、7、3、4、8、9、10
後序遍歷:顧名思義,就是從葉子結點出發,先遍歷葉子結點再到根結點,最後到父結點。我畫出順序可能會更直觀點。
結果是:5、6、7、2、3、9、10、8、4、1
層次遍歷:按0層、1層、2層、3層,從左到右來遍歷
結果是:1、2、3、4、5、6、7、8、9、10
我們接著就可以來理解二叉樹的重要的特性:
我們找五顆二叉樹來進行分析:這樣分析就簡單多了,我都覺得不用分析了,但是還是說說吧。
1、二叉樹中,第i層上最多有2的i次方個結點(i>=0)。這個很基本,這也是二叉樹和樹的區別。
2、深度為k的二叉樹至多有2的(k+1)次方 -1個結點(k>=0)。(深度為二叉樹中層數最大的葉節點的層數),滿二叉樹的深度為2,則共有7個結點。
3、對任何一顆二叉樹,如果其葉子結點數為n0,度為2的結點數為n2,則n0=n2+1;(一定不要忘了根結點的度也是2)。
二叉樹的遍歷
前序遍歷:應該是怎麼個流程呢:我們看圖。
遍歷的結果是:1、2、4、5、7、8、3、6。從根結點分兩部分,先把左邊的遍歷完,都是從左到右的。
中序遍歷:
結果是:4,2,7,8,5,1,3,6。
後序遍歷:
結果是:4、8、7、5、2、6、3、1
層次遍歷:
結果是:1、2、3、4、5、6、7、8
那麼樹和二叉樹就說這麼多,我相信掌握這麼多,也差不多夠用了哦,對於上面的基礎知識,要是我有不對的地方,希望大家指出哈。
原文**:
你應該掌握的 樹和二叉樹
我在上課的時候,由於各種原因,上課老師講的自己總不愛聽,現在到火燒眉毛了,才知道這些基礎知識的重要性,現在想想,也沒有那麼的困難。重在理解這些底層的概念,然後考試考的都是一些很簡單的概念和計算,在這裡我來闡述一下樹和二叉樹的一些考點。基礎知識一點也不能馬虎。所以我們從最基礎的開始說起。以這棵樹來說幾...
你應該掌握的 樹和二叉樹
我在上課的時候,由於各種原因,上課老師講的自己總不愛聽,現在到火燒眉毛了,才知道這些基礎知識的重要性,現在想想,也沒有那麼的困難。重在理解這些底層的概念,然後考試考的都是一些很簡單的概念和計算,在這裡我來闡述一下樹和二叉樹的一些考點。基礎知識一點也不能馬虎。所以我們從最基礎的開始說起。以這棵樹來說幾...
二叉樹 滿二叉樹和完全二叉樹
二叉樹是一種很重要的非線性資料結構,它是樹結構的一種重要的型別 它不是樹結構的特殊情況 其特徵是每個節點最多有兩個子樹。二叉樹的特點 二叉樹每個結點最多有 2個子結點,樹則無此限制 二叉樹中 結點的子樹 分成左子樹和右子樹,即使某結點只有一棵子樹,也要指明該子樹是左子樹,還是右子樹,就是說 二叉樹是...