合并排序递归不清楚如何实现数组的排序请帮助理解代码

时间:2015-06-02 14:39:37

标签: c++ mergesort

有人可以帮助我理解如何使用合并排序的递归代码完成排序

void merge_sort(int arr[],int low,int up)
{
    int mid;
    int temp[MAX];
    if(low<up)//if more than one element
    {
        mid=(low+up)/2;
        merge_sort(arr,low,mid);//sort lower array
        merge_sort(arr,mid+1,up);//sort upper array
        merge(arr,temp,low,mid,mid+1,up);//merge the two arrays to temp array
        copy(arr,temp,low,up);
    }
}

1 个答案:

答案 0 :(得分:0)

我认为这是一个重复的问题 来自this的解释非常明确。不是在C ++中,但我认为理解排除语言就足够了。