我已经编写了AVL树代码但是如何编写代码来查找我的树是否不平衡并且它找到了左边的左边,右边的左边,右边的右边和右边的不平衡类型?
答案 0 :(得分:0)
您可以正常@hp.setter
def hp(self, hp):
if hp < 0:
self.__hp = 0
elif hp > self.maxhp:
self.__hp = self.maxhp
else:
self.__hp = hp
,并在每个节点找到DFS traversal
和max height of the left subtree
。
如果所有节点都max height of the right subtree
,那么树就会平衡。
要找到不平衡树的类型(我认为你的意思是修复树所需的旋转类型),你可以使用左右子指针推断出所需的旋转类型。