我正在为AVL树递归实现有序遍历,并具有以下代码:
def inorder(self, root):
if root.left is not None:
self.inorder(root.left)
yield root
if root.right is not None:
self.inorder(root.right)
当我在任何AVL树上测试代码时,它不会迭代到最左边的元素,而是生成根并停止。当我调试时,好像是递归调用函数,但是调用节点没有改变。为什么会发生这种情况的任何想法?