在排好序的数组中添加一个数字,将添加后的数字插入到数组合适的位置, 保持数组原有排序方式。
算法如下:
public class Demo06 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int a[]={1,2,3,5,9,11,15,22,87};
int x=10;
int Array[]=insert(x,a);
for(int i=0;i<Array.length;i++) {
System.out.print(Array[i]+"\t");
}
}
public static int[] insert(int x,int o[]) {
int b[]=new int[o.length+1]; //数组b比o的长度加1,使其插入进来一个整型数字
b=o; //把o的引用传递给b
for(int i=0;i<b.length;i++) {
if(x<o[i]) { //从第一个开始循环找出比x大的数;
for(int j=b.length-1;j>i;j--) { //从比最后一个数字到i开始往后移动一位(包括第i位)
b[j]=b[j-1];
}
b[i]=x;
break;
}
}
return b;
}
}