1.二叉樹

概念

  • 二叉樹(binary tree)是每一個節點最多隻有兩個分支(即不存在分支度大於2的節點)的結構樹。一般分支被稱爲「左子樹」和「右子樹」,左子樹和右子樹的位置不能隨意顛倒。二叉樹的第i層 最多有2^{i-1}個節點;
  • 滿二叉樹:深度爲k的二叉樹至多 總共有 {\displaystyle 2^{\begin{aligned}(k+1)\end{aligned}}-1}個節點(定義根節點所在的深度{\displaystyle k_{0}=0} );當深度爲k的二叉樹有 {\displaystyle 2^{\begin{aligned}(k+1)\end{aligned}}-1}個節點時,稱爲「滿二叉樹」。

  • 徹底二叉樹:一棵二叉樹至多隻有最下面的兩層上的結點的度數能夠小於2,而且最下層上的結點都集中在該層最左邊的若干位置上,則此二叉樹成爲徹底二叉樹,而且最下層上的結點都集中在該層最左邊的若干位置上,而在最後一層上,右邊的若干結點缺失的二叉樹,則此二叉樹成爲徹底二叉樹 。

遍歷

前(先)序、中序、後序遍歷

遍歷二叉樹:L、D、R分別表示遍歷左子樹、訪問根結點和遍歷右子樹,則先(根)序遍歷二叉樹的順序是DLR,中(根)序遍歷二叉樹的順序是LDR,後(根)序遍歷二叉樹的順序是LRD。還有按層遍歷二叉樹。這些方法的時間複雜度都是O(n),n爲結點個數。spa

對二叉樹:進行遍歷,blog

先序(前序):一、二、四、八、九、五、十、十一、三、六、十二、1三、七、1四、15二叉樹

中序:八、四、九、二、十、五、十一、一、十二、六、1三、三、1四、七、15遍歷

後序:八、九、四、十、十一、五、二、十二、1三、六、1四、1五、七、三、1方法

相關文章
相關標籤/搜索