樹狀圖是一種資料結構,它是由n(n>=1)個有限節點組成乙個具有層次關係的集合。把它叫做「樹」是因為它看起來像一棵倒掛的樹,也就是說它是根朝上,而葉朝下的。它具有以下的特點:
每個節點有零個或多個子節點;沒有父節點的節點稱為根節點;每乙個非根節點有且只有乙個父節點;除了根節點外,每個子節點可以分為多個不相交的子樹;
樹(tree)是包含n(n>0)個結點的有窮集,其中:
(1)每個元素稱為結點(node);
(2)有乙個特定的結點被稱為根結點或樹根(root)。
(3)除根結點之外的其餘資料元素被分為m(m≥0)個互不相交的集合t1,t2,……tm-1,其中每乙個集合ti(1<=i<=m)本身也是一棵樹,被稱作原樹的子樹(subtree)。
二叉樹,就是度不差過2的樹(節點最多有兩個叉)
滿二叉樹:乙個二叉樹,如果每乙個層的結點數都達到最大值,則這個二叉樹就是滿二叉樹。
完全二叉樹:葉節點只能出現在最下層和次下層,並且最下面一層的結點都集中在該層最左邊的若干位置的二叉樹
滿二叉樹一定是完全二叉樹,但是完全二叉樹不一定是滿二叉樹
父節點與左孩子的索引對應
父節點與右孩子的索引對應
孩子節點索引找父節點索引
(n-1)//2
二叉樹 滿二叉樹與完全二叉樹
二叉樹 binary tree 是n n 0 個元素的有限集合,該集合為空或者為由乙個稱為 根 的元素及兩個不相交的 被分別稱為左子樹和右子樹的二叉樹組成 二叉樹的基本特點 每個結點最多有兩棵子樹 左子樹和右子樹是有順序的,且不可顛倒 圖一1 結點 二叉樹中的每乙個元素都稱為結點。通常二叉樹的許多名...
樹與二叉樹
樹是一類重要的非線性資料結構,是以分支關係定義的層次結構 定義 樹 tree 是n n 0 個結點的有限集t,其中 n 0時為空樹 n 0時,有且僅有乙個特定的結點,稱為樹的根 root 當n 1時,其餘結點可分為m m 0 個互不相交的有限集t1,t2,tm,其中每乙個集合本身又是一棵樹,稱為根的...
樹與二叉樹
建立 先序二叉樹,中序二叉樹,後序二叉樹。給定兩種遍歷序列 前序中序或後序中序 重塑二叉樹 遍歷 判斷乙個節點是否存在於二叉樹中 二叉樹的遍歷 先序,中序,後序 遞迴 非遞迴 層次遍歷 從上到下或從下到上列印 zigzag遍歷方式層次遍歷 二叉樹性質 二叉樹中葉子節點的個數 二叉樹第k層節點數目 二...