提高篇--資料結構專題3
阿新 • • 發佈:2020-09-09
樹與二叉樹
樹的定義與性質
- 沒有結點的樹,稱為空樹
- 樹的層次
從根結點開始算
根結點為第一層
- 結點的子樹棵數稱為結點的度,樹中結點最大的度稱為樹的度
- 一條邊連線兩個結點,樹中不存在環
對n個結點的樹,邊數是n-1
- 葉子結點度為0
- 樹的深度,根結點深度為1,樹的高度,葉子結點高度為1
- 多棵樹組合在一起稱為森林
二叉樹的遞迴定義
二叉樹的遞迴定義 - 要麼二叉樹沒有根結點,是一顆空樹 - 要麼二叉樹由根結點,左子樹,右子樹組成,且左子樹和右子樹都是二叉樹 1. 滿二叉樹 每一層的結點個數都達到了當層能達到的最大結點數 2. 完全二叉樹 除了最下面一層外,其餘層的結點個數都達到了層能達到的最大結點數 最下面一層只從左到右連續存在若干結點 層次 孩子結點,父親結點,兄弟結點,祖先結點,子孫結點 結點可以稱為自身的祖先&子孫結點
二叉樹的儲存結構與基本操作
二叉樹的儲存結構
二叉樹結點的查詢,修改
二叉樹的插入
二叉樹的建立
二叉樹儲存結構圖示
完全二叉樹的儲存結構
對一棵完全二叉樹,如果給它的所有結點按從上到下,從左到右的順序編號[從1開始]
對完全二叉樹中的任何一個結點,設編號為x
其左孩子的編號一定是2x,而右孩子的編號一定是2x+1