日期:2014-05-20 浏览次数:20866 次
public void Merge(int[] arrays,int start,int m,int end){
int length=end-start+1;
int temp[]=new int[length];//用来存放比较的数组,用完复制回到原来的数组
int i=start;
int j=m+1;
int c=0;
while(i<=m &&j<=end){
if(arrays[i]<arrays[j]){
temp[c]=arrays[i];
i++;
}else{
temp[c]=arrays[j];
j++;
}
c++;
}
while(i<=m){
temp[c++]=arrays[i++];
}
while(j<=end){
temp[c++]=arrays[j++];
}
c=0;
for(int t=start;t<=end;t++,c++){