2个回答
展开全部
int a[SIZE_N],b[SIZE_N],c[SIZE_N*2]; //a,b 为有序数组,c为最终结果,
int i,j,k;
//采用最简单的归并排序。。
for(i = j = k = 0;i < n && j < m;k ++) {
if (a[i] > a[j]) {
c[k] = a[i];
i ++;
}
else {
c[k] = b[j];
j ++;
}
}
for (i;i < n;i ++) {
c[k++] = a[i];
}
for(j;j < m;j ++) {
c[k++] = b[j];
}
int i,j,k;
//采用最简单的归并排序。。
for(i = j = k = 0;i < n && j < m;k ++) {
if (a[i] > a[j]) {
c[k] = a[i];
i ++;
}
else {
c[k] = b[j];
j ++;
}
}
for (i;i < n;i ++) {
c[k++] = a[i];
}
for(j;j < m;j ++) {
c[k++] = b[j];
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询