二叉樹定義:每個結點最多有兩個子樹的樹結構。
滿二叉樹定義:乙個二叉樹,如果每乙個層的結點數都達到最大值,則這個二叉樹就是滿二叉樹。也就是說,如果乙個二叉樹的層數為k,且結點總數是(2^k) -1 ,則它就是滿二叉樹
完全二叉樹定義:若設二叉樹的深度為h,除第 h 層外,其它各層 (1~h-1) 的結點數都達到最大個數,第 h 層所有的結點都連續集中在最左邊,這就是完全二叉樹。(滿二叉樹必定為完全二叉樹,但完全二叉樹不一定為滿二叉樹)
二叉樹的五個重要性質:
1.二叉樹的第i層最多有2^(i-1)個結點 i>=1
2.深度為k的二叉樹最少有k個結點,最多有2^k-1個結點 k>=0
3.對任意一棵非空二叉樹來說,葉子結點總比度為2的結點多乙個,即若葉子結點為n0,度為2的結點為n2,那麼n0=n2+1
4.具有n個結點的二叉樹,其深度至少為(log2n)+1取整,至多為n
5.對於完全二叉樹來說,設有n個結點,從根結點開始,按層序(從上到下,由左至右)編號(k=1,2,3.......n),有以下結論:
(1)若k=1,該結點為根節點,且沒有父結點
(2)若2k<=n,則編號為k的結點左子結點編號為2k,否則該結點無左子結點(也無右子結點)
(3)若2k+1<=n,則編號為k的右子結點編號為2k+1,否則無右子結點
二叉樹的遍歷:
左子樹l,根結點d,右子樹r
先序遍歷:dlr 124583697
中序遍歷:ldr 428516937
後序遍歷:lrd 485296731
層序遍歷:就是一層一層來了,從上到下,從左至右,1,2,3,4,5,6.........
(事實中的二叉樹左子結點數值小於父結點的數值,右子結點數值大於父結點數值)
**實現:
二叉樹的重要性質
性質1二叉樹第i層上的結點數目最多為2i 1 i 1 證明 用數學歸納法證明 歸納基礎 i 1時,有2 i 1 2 0 1。因為第1層上只有乙個根結點,所以命題成立。歸納假設 假設對所有的j 1 jj 1個結點,證明j i時命題亦成立。歸納步驟 根據歸納假設,第i 1層上至多有2 i 2個結點。由於...
二叉樹的定義 性質
一 二叉樹的定義 二叉樹是一種特殊的樹結構,也是常用的樹結構。二叉樹的儲存和處理比一般的樹簡單,同時一般的樹都能通過 簡單的轉換得到與之對應的二叉樹,這樣就可以採用二叉樹的儲存結構和有關演算法來解決樹的有關問題。二叉樹與樹一樣具有遞迴性質,它與樹的區別主要有以下兩點 1 二叉樹的每個結點至多只有兩棵...
二叉樹的性質及遍歷
1.性質一 在二叉樹的第i層上至多有2 i 1 個結點 i 1 2.性質二 深度為k的二叉樹至多有2 k 1個結點 k 1 3.性質三 對任何一顆二叉樹t,如果其終端結點數為n0,度為2的結點數為n2,則n0 n2 1.4.性質四 具有n個結點的完全二叉樹的深度為 log2n 向下取整 1.1.前序...