标签: java algorithm mergesort
我不太确定为什么我的合并排序实现会出现stackoverflow错误。我已多次查看代码,但我不明白为什么会发生这种情况。我试过调试,但是在理解为什么值0和4(数组的第一个和最后一个索引)在我遍历代码时永远不会改变。最后它会抛出堆栈溢出错误。
答案 0 :(得分:1)
对mergesort的第一次递归调用(第17行?)应使用" start,mid&#34 ;, not" start,end"。这会使你陷入无休止的循环,所以你最终会耗尽堆栈。
相信你的调试器。