主题:合并两个数组的算法
已知数组R1[5] R2[5] 按升序排列,用算法实现将R1[5] R2[5] 合在一起后升序排列
下面我写的算法 不知道错在哪里。调试了,不晓得是什么原因第一个for循环4次就终止了
public static int[] p(int r1[],int r2[]){
int R[] = new int[r1.length+r2.length];
int a=0;
int p=0;
for(int i=0;i<r1.length;i++){
for(int j=p;j<r2.length;j++){
if(r1[i]<r2[j]){
R[a] = r1[i];
a++;
break;
}else{
R[a] = r2[j];
p = j+1;
a++;
}
}
}
return R;
}
下面我写的算法 不知道错在哪里。调试了,不晓得是什么原因第一个for循环4次就终止了
public static int[] p(int r1[],int r2[]){
int R[] = new int[r1.length+r2.length];
int a=0;
int p=0;
for(int i=0;i<r1.length;i++){
for(int j=p;j<r2.length;j++){
if(r1[i]<r2[j]){
R[a] = r1[i];
a++;
break;
}else{
R[a] = r2[j];
p = j+1;
a++;
}
}
}
return R;
}