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