题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。 程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的 数,依次后移一个位置。
import java.util.Arrays;
import java.util.Scanner;
public class program30 {
public static void main(String args[]){
/*
题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,
插入后此元素之后的数,依次后移一个位置。
*/
int a[] = new int[] {0,4,20,36};
Scanner input = new Scanner(System.in);
System.out.print("请输入插入的数字:");
int n = input.nextInt();
a = Arrays.copyOf(a,a.length+1);//扩充数组
a[a.length-1] = n;//添加的数字
Arrays.sort(a);//对数组进行排序
for (int i = 0;i < a.length;i++){
System.out.print(a[i]+" ");//输出
}
}
}
本文介绍了一种在已排序数组中插入新数并保持数组排序的方法。通过使用Java的Arrays类,实现数组的动态扩容与排序,确保了插入操作后的数组仍保持有序状态。
2826

被折叠的 条评论
为什么被折叠?



