C++ 不平衡avl树检查功能

C++ 不平衡avl树检查功能,c++,data-structures,avl-tree,C++,Data Structures,Avl Tree,我正在实现一个AVL树,并编写了一个函数来计算给定树的平衡因子: int avlTree::balanceFactor(avlNode *tree){ return height(tree->left) - height(tree->right); } 但看起来,虽然确实返回了树的正确平衡因子,但它不会让我确定树是否是AVL平衡的,因为根据定义,每个子树的平衡因子都应该被检查。i、 e那棵树: 根据函数,平衡因子为0,这在平衡树时不会给我很多。我可以添加什么?您的平衡

我正在实现一个AVL树,并编写了一个函数来计算给定树的平衡因子:

int avlTree::balanceFactor(avlNode *tree){
     return height(tree->left) - height(tree->right);
 }
但看起来,虽然确实返回了树的正确平衡因子,但它不会让我确定树是否是AVL平衡的,因为根据定义,每个子树的平衡因子都应该被检查。i、 e那棵树:


根据函数,平衡因子为0,这在平衡树时不会给我很多。我可以添加什么?

您的
平衡因子
功能正确。您只需将其应用于从根开始的节点,沿着不平衡节点链向下,如所述