實現代碼:
package homework;
import java.util.Scanner;
public class HomeWork {
public static void main(String[] args) {
//將輸入的數字插入到一個有序的數組中的合適位置
Scanner input = new Scanner(System.in);
System.out.println("請輸入一個數字:");
int num = input.nextInt();
//有序的整型數組
int[] nums = {20,23,50,53,65,68};
//1,找到合適的位置 索引
int index = nums.length;
for(int i = 0;i < nums.length;i++){
if(nums[i] > num){
index = i;
break;
}
}
//進行新數組的構建,在index之前直接復制,index則是輸入數字的位置,
//index之后的每一位元素后移
int[] newNums = new int[nums.length+1];
for(int i = 0;i<newNums.length;i++){
if(i < index){
newNums[i] = nums[i];
}else if(i == index){
newNums[i] = num;
}else{
newNums[i] = nums[i - 1];
}
}
//輸出新數組
System.out.println("插入后的結果");
for(int i = 0;i<newNums.length;i++){
System.out.println(newNums[i]);
}
for(int i =0;i<nums.length-1;i++){
for(int j = 0;j<nums.length-i-1;j++){
if(nums[j] > nums[j+1]){
int temp;
temp = nums[j];
nums[j] = nums[j+1];
nums[j+1]=temp;
}
}
}
}
}
