自定義樹(1):二叉樹
阿新 • • 發佈:2019-01-03
通過學習自定義樹,瞭解與樹相關的資料結構。
1)樹:n(n>=0)個結點的有限集。
結點的度:結點擁有的子樹的數目
葉子結點(終端結點):度為0的結點
分支結點(非終端結點):度不為0的結點
樹的度:樹中各結點的度的最大值
層次:根結點的層次為1,其餘結點的層次等於該結點的雙親結點的層次加1
樹的深度(高度):樹中結點的最大層次
2)森林
是指m(m>=0)棵互不相交的樹的集合。
3)二叉樹
二叉樹是每個結點最多有兩個子樹的樹結構。(不存在度大於2的結點)。
3.1)滿二叉樹:二叉樹中所有分支結點的度數都為2,並且葉子結點都在統一層次上。
3.2)完全二叉樹:對一棵具有n個結點的二叉樹按層序編號,編號為i(1<=i>=n)的結點與同樣的深度的滿二叉樹中編號為i的結點在二叉樹中的位置完全相同。
完全二叉樹的特點:
①葉子結點只能出現在最下層和次下層,且最下層的葉子結點集中在樹的左部連續位置。倒數二層,若有葉子結點,一定在右部連續位置。
②一棵滿二叉樹必定是一棵完全二叉樹,而完全二叉樹未必是滿二叉樹。
③若結點的度為1,則該結點只有左孩子。
④同樣結點數的二叉樹,完全二叉樹的深度最小。
總結:二叉樹的性質:
對性質3)和性質4)的證明: