归并排序:为什么右边没有剩余元素?
Merge Sort: Why are there no remaining elements in the right part?
使用 this link 中的代码,merge
函数没有 while
循环用于 temp 右侧剩余的 j
个元素(helper
)数组转换成原来的(numbers
)数组。
它仍然可以正常工作。我想知道是否有人可以帮助解释为什么 j
总是到达 high
(因为 helper
数组的右侧没有剩余元素需要简单地复制到numbers
数组)。
函数merge(low, middle, high)
从将numbers
的元素复制到helper
数组开始。
这就是为什么 numbers
数组已经有了元素,没有必要将它们从 helper
复制回来。
使用 this link 中的代码,merge
函数没有 while
循环用于 temp 右侧剩余的 j
个元素(helper
)数组转换成原来的(numbers
)数组。
它仍然可以正常工作。我想知道是否有人可以帮助解释为什么 j
总是到达 high
(因为 helper
数组的右侧没有剩余元素需要简单地复制到numbers
数组)。
函数merge(low, middle, high)
从将numbers
的元素复制到helper
数组开始。
这就是为什么 numbers
数组已经有了元素,没有必要将它们从 helper
复制回来。