C ++ AVL树平衡问题

时间:2016-04-01 03:40:57

标签: c++ algorithm sorting avl-tree tree-balancing

我已经用C ++中的旧二进制树构建了一个AVL树用于练习并且它无法正常工作。我认为它可能无法正确更新节点的高度,但我无法找出问题的根源(我90%确定它与辅助函数getHeight,setHeight,getBalance有关) 。

一些示例测试运行..:

添加6,3,4导致右旋转它应该导致RL旋转

类似地,添加20,30,25会导致LL旋转,因为它应该导致LR旋转

添加20,30,10,5,6导致两个单独的右旋转,它应该导致RL旋转

rake db:migrate

我很感激有关进一步解决这个问题的任何提示/帮助。如果我能提供更多信息来帮助我,请告诉我。

谢谢。

0 个答案:

没有答案