當前位置:編程學習大全網 - 腳本源碼 - 二叉樹的遍歷過程是怎樣的?

二叉樹的遍歷過程是怎樣的?

樓主妳好,因技術有限,所以在網上找了壹些相關的資料,希望可以幫助到妳。樹是壹種簡單的非線性結構,所有元素之間具有明顯的層次特性。

在樹結構中,每壹個結點只有壹個前件,稱為父結點,沒有前件的結點只有壹個,稱為樹的根結點,簡稱樹的根。每壹個結點可以有多個後件,稱為該結點的子結點。沒有後件的結點稱為葉子結點。

在樹結構中,壹個結點所擁有的後件的個數稱為該結點的度,所有結點中最大的度稱為樹的度。樹的最大層次稱為樹的深度。

二*樹的特點:(1)非空二*樹只有壹個根結點;(2)每壹個結點最多有兩棵子樹,且分別稱為該結點的左子樹與右子樹。

二*樹的基本性質:

(1)在二*樹的第k層上,最多有2k-1(k≥1)個結點;

(2)深度為m的二*樹最多有2m-1個結點;

(3)度為0的結點(即葉子結點)總是比度為2的結點多壹個;

(4)具有n個結點的二*樹,其深度至少為[log2n]+1,其中[log2n]表示取log2n的整數部分;

(5)具有n個結點的完全二*樹的深度為[log2n]+1;

(6)設完全二*樹***有n個結點。如果從根結點開始,按層序(每壹層從左到右)用自然數1,2,….n給結點進行編號(k=1,2….n),有以下結論:

①若k=1,則該結點為根結點,它沒有父結點;若k>1,則該結點的父結點編號為INT(k/2);

②若2k≤n,則編號為k的結點的左子結點編號為2k;否則該結點無左子結點(也無右子結點);

③若2k+1≤n,則編號為k的結點的右子結點編號為2k+1;否則該結點無右子結點。

滿二*樹是指除最後壹層外,每壹層上的所有結點有兩個子結點,則k層上有2k-1個結點深度為m的滿二*樹有2m-1個結點。

完全二*樹是指除最後壹層外,每壹層上的結點數均達到最大值,在最後壹層上只缺少右邊的若幹結點。

二*樹存儲結構采用鏈式存儲結構,對於滿二*樹與完全二*樹可以按層序進行順序存儲。

二*樹的遍歷:

(1)前序遍歷(DLR),首先訪問根結點,然後遍歷左子樹,最後遍歷右子樹;

(2)中序遍歷(LDR),首先遍歷左子樹,然後訪問根結點,最後遍歷右子樹;

(3)後序遍歷(LRD)首先遍歷左子樹,然後訪問遍歷右子樹,最後訪問根結點。

相關請訪問

  • 上一篇:王加壹筆是什麽字
  • 下一篇:掃黑行動之臨界點怎麽沒上映
  • copyright 2024編程學習大全網