题目源自b站韩顺平老师发布的java30天速成p187-本章作业3
(我的做法和老师的有些不同,但因为也能实现题目要求,所以没做更改)
题目:
// 已知有个升序的数组,要求插入一个元素,该数组顺序依然是升序
// 如:{10,12,45,90},添加23后,数组为{10,12,45,90}
代码实现:
public class Homework04{
public static void main(String[] args) {
// 已知有个升序的数组,要求插入一个元素,该数组顺序依然是升序
// 如:{10,12,45,90},添加23后,数组为{10,12,45,90}
int[] arr = {10,12,45,90};
// 新建一个数组储存扩容后的数组
int[] arrnew = new int[5];
int ex_num = 23;
int temp = 0;
// 遍历arr赋值给arrnew
arrnew[0] = ex_num;
for(int i = 0;i < arr.length;i++){
arrnew[i + 1] = arr[i];
}
// 用23逐一比较新的数组里的元素
// 冒泡排序比较大小
for(int i = 0;i < arrnew.length - 1;i++){
if(arrnew[i] > arrnew[i + 1]){
temp = arrnew[i];
arrnew[i] = arrnew[i + 1];
arrnew[i + 1] = temp;
}
}
// 输出新的数组
System.out.println("新的数组:");
for(int i = 0;i < arrnew.length;i++){
System.out.print(arrnew[i] + " ");
}
}
}
输出: