我有一个与部分代码有关的问题。我是C语言的新手,开始研究排序算法并找到了以下代码:
MERGE-SORT(A, low, high)
if low < high
then mid = (low + high)/2
MERGE-SORT(A, low, mid)
MERGE-SORT(A, mid+1, high)
printArray(A, low, mid)
printArray(A, mid+1, high)
MERGE(A, low, mid, high)
我知道mergesort是做什么的,并且我理解递归,但是我对应该打印的内容感到困惑,它表明它将打印
3
0
2
0 3 7
2 5
有人可以解释打印此文件的步骤吗?当我尝试思考它将产生什么结果时,我的想法就大不相同了。