如何判斷二叉樹是否為完全二叉樹?
1、首先明白什么是完全二叉樹,完全二叉樹是由滿二叉樹引出來的。一顆完全二叉樹的倒數(shù)第二層肯定是滿二叉樹,最后一層可以不是滿的,但是葉子節(jié)點都是靠左連續(xù)的。
2、怎么判斷是否是完全二叉樹
我們采用層級遍歷來判斷是否是完全二叉樹,在遍歷的時候分兩種情況
如果有右孩子沒有左孩子,肯定不是完全二叉樹
如果有個節(jié)點不是不是左右孩子都全,那么后續(xù)的節(jié)點肯定是葉子節(jié)點,如果不是葉子節(jié)點那么肯定不是完全二叉樹
Java代碼為例
定義樹節(jié)點:核心邏輯驗證