java程序:一个排序好的数组,增加一个数插入到合适的位置保存到另外个数组,输出,怎么写?
2个回答
展开全部
import java.util.Arrays;
public class Insert {
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
int[] b={1,2,3,4,5,6,7,8,9};
Insert.insert(6, b);
}
public static void insert(int a,int[] b ){
int size;
size=b.length;
int l=size;
int[] c=new int[size+1];
for(int i=0;i<size;i++){
if(a<b[i]) {
l=i;
break;
}
}
for(int i=0;i<l;i++){
c[i]=b[i];
}
c[l]=a;
for(int i=l;i<b.length;i++){
c[i+1]=b[i];
}
System.out.print("原数组 :");
for(int i=0;i<b.length;i++) {
System.out.print(b[i]+"\t");
}
System.out.println("\n");
System.out.println("插入数字 :\t" +a);
System.out.println();
System.out.print("插入后新数组 :");
for(int i=0;i<c.length;i++) {
System.out.print(c[i]+"\t");
}
}
}
public class Insert {
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
int[] b={1,2,3,4,5,6,7,8,9};
Insert.insert(6, b);
}
public static void insert(int a,int[] b ){
int size;
size=b.length;
int l=size;
int[] c=new int[size+1];
for(int i=0;i<size;i++){
if(a<b[i]) {
l=i;
break;
}
}
for(int i=0;i<l;i++){
c[i]=b[i];
}
c[l]=a;
for(int i=l;i<b.length;i++){
c[i+1]=b[i];
}
System.out.print("原数组 :");
for(int i=0;i<b.length;i++) {
System.out.print(b[i]+"\t");
}
System.out.println("\n");
System.out.println("插入数字 :\t" +a);
System.out.println();
System.out.print("插入后新数组 :");
for(int i=0;i<c.length;i++) {
System.out.print(c[i]+"\t");
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看例子:
import java.util.Arrays;
public class IntAry {
public static void main(String[] args) {
int[] ary = {1, 3, 5, 7, 9};
int value = 4;
int[] newAry = insertElement(ary, value);
for(int i = 0; i < newAry.length ; i++){
System.out.println(newAry[i]);
}
}
private static int[] insertElement(int[] ary, int value) {
int[] newAry = new int[ary.length + 1];
System.arraycopy(ary, 0, newAry, 0, ary.length);
newAry[newAry.length - 1] = value;
Arrays.sort(newAry);
return newAry;
}
}
-----------测试
1
3
4
5
7
9
import java.util.Arrays;
public class IntAry {
public static void main(String[] args) {
int[] ary = {1, 3, 5, 7, 9};
int value = 4;
int[] newAry = insertElement(ary, value);
for(int i = 0; i < newAry.length ; i++){
System.out.println(newAry[i]);
}
}
private static int[] insertElement(int[] ary, int value) {
int[] newAry = new int[ary.length + 1];
System.arraycopy(ary, 0, newAry, 0, ary.length);
newAry[newAry.length - 1] = value;
Arrays.sort(newAry);
return newAry;
}
}
-----------测试
1
3
4
5
7
9
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询