判断一棵二叉树是否是平衡二叉樹
平衡二叉树定义(AVL):它或者是一颗空树或者具有以下性质的二叉排序树:它的左子树和右子树的深度之差(平衡因子)的绝对值不超过1,且咜的左子树和右子树都是一颗平衡二叉树
一棵AVL树有如下必要条件:
- 它必须是二叉查找树(BST)。
- 每个节点的左子树和右子树的高度差至多为1
根据二叉树的定义,我们可以递归遍历二叉树的每一个节点来求出每个节点的左右子树的高度,如果每个节点的左右子树的高度相差不超过1按照定义,它就是一颗平衡二叉树
树的结构自己画一下哈。
判断一棵二叉树是否是平衡二叉樹
平衡二叉树定义(AVL):它或者是一颗空树或者具有以下性质的二叉排序树:它的左子树和右子树的深度之差(平衡因子)的绝对值不超过1,且咜的左子树和右子树都是一颗平衡二叉树
一棵AVL树有如下必要条件:
根据二叉树的定义,我们可以递归遍历二叉树的每一个节点来求出每个节点的左右子树的高度,如果每个节点的左右子树的高度相差不超过1按照定义,它就是一颗平衡二叉树
树的结构自己画一下哈。
判断一棵二叉树是否是平衡二叉樹
平衡二叉树定义(AVL):它或者是一颗空树或者具有以下性质的二叉排序树:它的左子树和右子树的深度之差(平衡因子)的绝对值不超过1,且咜的左子树和右子树都是一颗平衡二叉树
一棵AVL树有如下必要条件:
根据二叉树的定义,我们可以递归遍历二叉树的每一个节点来求出每个节点的左右子树的高度,如果每个节点的左右子树的高度相差不超过1按照定义,它就是一颗平衡二叉树
树的结构自己画一下哈。