题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
思路分析:将一个数字插入按要求插入到一个数组中,怎样找到这个数字的的位置是关键。
针对这一题目,我整理了三种解决方案,以下是源代码:
import java.util.Scanner;
public class InsertNumber {
public static void main(String[] args) {
int[] arr = { 10, 20, 30, 40, 50};
int[] arrchange = new int[arr.length + 1];
System.out.print("before change: ");
for (int i = 0; i < arr.length; i++) {
System.out.print(" " + arr[i]);
}
System.out.println();
System.out.println("Input a number: ");
Scanner scanner = new Scanner(System.in);
int number = scanner.nextInt();
// 冒泡排序的思路
arrchange = insort1(arr, number);
System.out.print("changed: ");
for (int i = 0; i < arrchange.length; i++) {
System.out.print(" " + arrchange[i]);
}
// 插入排序的思路
// arrchange = insort2(arr, number