求二叉樹左右子樹高度差 110 平衡二叉樹

2021-10-16 10:32:56 字數 985 閱讀 8165

力扣​leetcode-cn.com

給定乙個二叉樹,判斷它是否是高度平衡的二叉樹。

本題中,一棵高度平衡二叉樹定義為:

乙個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過1。

示例 1:

給定二叉樹 [3,9,20,null,null,15,7] 3

/ 9 20

/ 15 7

返回 true 。

示例 2:

給定二叉樹 [1,2,2,3,3,null,null,4,4] 1

/ 2 2

/ 3 3

/ 4 4

返回 false 。

定義乙個方法depth()來求二叉樹的深度

先對二叉樹進行判斷是否為null,是則說明該樹是平衡樹

若二叉樹左右子樹高度差大於 1,則說明該樹不平衡

然後遞迴左右子樹,判斷是否均為平衡樹

public boolean isbalanced(treenode root) 

​ // 若二叉樹左右子樹高度差大於 1,則說明該樹不平衡

if (math.abs(depth(root.left) - depth(root.right)) > 1)

​ // 遞迴左右子樹,判斷是否均為平衡樹

return isbalanced(root.left) && isbalanced(root.right);

​ }​ // 求乙個二叉樹的深度

二叉樹的高度 110 平衡二叉樹

給定乙個二叉樹,判斷它是否是高度平衡的二叉樹。本題中,一棵高度平衡二叉樹定義為 乙個二叉樹 每個節點 的左右兩個子樹的高度差的絕對值不超過 1 示例 1 輸入 root 3,9,20,null,null,15,7 輸出 true 示例 2 輸入 root 1,2,2,3,3,null,null,4,...

求二叉樹高度 leetcode110 平衡二叉樹

給定乙個二叉樹,判斷它是否是高度平衡的二叉樹。本題中,一棵高度平衡二叉樹定義為 乙個二叉樹 每個節點 的左右兩個子樹的高度差的絕對值不超過1。示例 1 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回true。示例 2 給定二叉樹 1,2,2,3,3,null,n...

求二叉樹高度

函式介面定義 int getheight bintree bt 其中bintree結構定義如下 typedef struct tnode position typedef position bintree struct tnode 要求函式返回給定二叉樹bt的高度值。裁判測試程式樣例 include...