From 6bde21f85c26708a5bbbe0926f7e752c5e76e106 Mon Sep 17 00:00:00 2001 From: Matej Focko Date: Sat, 7 May 2022 15:38:17 +0200 Subject: [PATCH] fix(avl): be more explicit in `is_correct` Signed-off-by: Matej Focko --- avl.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/avl.py b/avl.py index 5445168..eda3a63 100644 --- a/avl.py +++ b/avl.py @@ -29,7 +29,11 @@ class AVLTree(RankedTree[T]): if not node: return True - if not (-1 <= _balance_factor(node) <= 1): + if not ( + -1 <= _balance_factor(node) <= 1 + and node.rank + == 1 + max(Node.get_rank(node.left), Node.get_rank(node.right)) + ): return False return not recursive or (