|
|
|
@ -28,11 +28,11 @@ def merge(nums, left, mid, right):
|
|
|
|
|
if i > left_end:
|
|
|
|
|
nums[k] = tmp[j]
|
|
|
|
|
j += 1
|
|
|
|
|
# 否则,若“右子数组已全部合并完”或“左子数组元素 < 右子数组元素”,则选取左子数组元素,并且 i++
|
|
|
|
|
# 否则,若“右子数组已全部合并完”或“左子数组元素 <= 右子数组元素”,则选取左子数组元素,并且 i++
|
|
|
|
|
elif j > right_end or tmp[i] <= tmp[j]:
|
|
|
|
|
nums[k] = tmp[i]
|
|
|
|
|
i += 1
|
|
|
|
|
# 否则,若“左子数组元素 > 右子数组元素”,则选取右子数组元素,并且 j++
|
|
|
|
|
# 否则,若“左右子数组都未全部合并完”且“左子数组元素 > 右子数组元素”,则选取右子数组元素,并且 j++
|
|
|
|
|
else:
|
|
|
|
|
nums[k] = tmp[j]
|
|
|
|
|
j += 1
|
|
|
|
|