7-2 sdut-JAVA-Insert Integer element into array lists
分数 10
全屏浏览
切换布局
作者 马新娟
单位 山东理工大学
Insert Integer element into arraylists (maintaining elements in ascending sequence),and the most numbers inserted is 100.
Input Specification:
Enter an integer n on the first line which represent the amount of data to be inserted.
Enter n integer numbers on the next line which will be inserted into arraylists (maintaining elements in ascending sequence).
Output Specification:
Please output the elements of arraylists after inserting every elements.
Sample Input:
6 10 5 4 11 12 9
Sample Output:
10 5 10 4 5 10 4 5 10 11 4 5 10 11 12 4 5 9 10 11 12
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
栈限制
8192 KB
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int[] b = new int[n + 1]; // 使用n+1来存储所有元素,包括第一个默认元素 // 读取n个整数并插入到数组b中 for (int i = 1; i <= n; i++) { b[i] = in.nextInt(); // 插入排序:每次插入一个新元素后,对数组进行排序并打印 for (int j = i - 1; j >= 0; j--) { // 从后向前比较和交换 if (b[j] > b[j + 1]) { int temp = b[j]; b[j] = b[j + 1]; b[j + 1] = temp; } } // 打印排序后的数组 for (int k = 1; k <= i; k++) { // 从1开始打印,因为b[0]是未使用的 if (k == i) { System.out.println(b[k] + " "); // 最后一个元素后打印换行 } else { System.out.print(b[k] + " "); // 中间元素后打印空格 } } } in.close(); // 关闭Scanner对象以释放资源 } }