(C++)我关于 AVL-Tree 的 Romove(x) 函数有什么问题?当我测试它时它引起了一些中断

问题描述

我创建了一个 AVL-Tree,其中包含 25 个随机整数,我希望按其原始顺序删除每个整数。
所以每次我删除一个数字时,我都会取一个 InorderTraverse。但是它导致了一些中断,我发现InorderTraverse的列表并没有一个一个地减少,它有一些缺口是这样的(见delete 143和564):>

Create AVL-Tree:
279 302 225 801 299 416 72 91 738 150 629 265 343 456 63 347 143 564 908 930 616 715 169 36 67
InorderTraverse:
36 63 67 72 91 143 150 169 225 265 279 299 302 343 347 416 456 564 616 629 715 738 801 908 930
Remove:
delete:279     Traverse: 36 63 67 72 91 143 150 169 225 265 299 302 343 347 416 456 564 616 629 715 738 801 908 930
delete:302     Traverse: 36 63 67 72 91 143 150 169 225 265 299 343 347 416 456 564 616 629 715 738 801 908 930
delete:225     Traverse: 36 63 67 72 91 143 150 169 265 299 343 347 416 456 564 616 629 715 738 801 908 930
delete:801     Traverse: 36 63 67 72 91 143 150 169 265 299 343 347 416 456 564 616 629 715 738 908 930
delete:299     Traverse: 36 63 67 72 91 143 150 169 265 343 347 416 456 564 616 629 715 738 908 930
delete:416     Traverse: 36 63 67 72 91 143 150 169 265 343 347 456 564 616 629 715 738 908 930
delete:72      Traverse: 36 63 67 91 143 150 169 265 343 347 456 564 616 629 715 738 908 930
delete:91      Traverse: 36 63 67 143 150 169 265 343 347 456 564 616 629 715 738 908 930
delete:738     Traverse: 36 63 67 143 150 169 265 343 347 456 564 616 629 715 908 930
delete:150     Traverse: 36 63 67 143 169 265 343 347 456 564 616 629 715 908 930
delete:629     Traverse: 36 63 67 143 169 265 343 347 456 564 616 715 908 930
delete:265     Traverse: 36 63 67 143 169 343 347 456 564 616 715 908 930
delete:343     Traverse: 36 63 67 143 169 347 456 564 616 715 908 930
delete:456     Traverse: 36 63 67 143 169 347 564 616 715 908 930
delete:63      Traverse: 36 67 143 169 347 564 616 715 908 930
delete:347     Traverse: 36 67 143 169 564 616 715 908 930
delete:143     Traverse: 36 67 169 564 616 715 908 930
delete:564     Traverse: 36 67 169 616 715
delete:908     Traverse: 36 67 169 616 715
delete:930     Traverse: 36 67 169 616 715
delete:616     Traverse: 36 67 169 715
delete:715     Traverse: 36 67 169
delete:169     Traverse: 36 67
delete:36      Traverse:

我已经查过我的课本,在网上搜索过,但仍然没有解决
我希望你能帮助我。非常感谢! 以下是完整代码https://paste.ubuntu.com/p/SD3pDnYNJY/

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)