合并排序:为什么右侧没有剩余元素?

时间:2016-10-14 13:30:26

标签: arrays algorithm sorting mergesort

使用this link中的代码,merge函数没有while循环来显示临时右侧的剩余j元素helper })数组到原始(numbers)数组。

它仍然可以正常工作。我想知道是否有人可以帮助解释为什么j总是到达high(因为helper数组右侧没有剩余的元素需要简单地复制到numbers数组)。

1 个答案:

答案 0 :(得分:3)

函数merge(low, middle, high)从将numbers的元素复制到helper数组开始。

这就是numbers数组已有元素的原因,没有必要将它们从helper复制回来。