import java.util.Scanner;
/*
需求:排序一个随机数组,按排序规律继续插入一个数字……
排序方法:冒泡;
思路:1、随机生成一个10个数字的数组,排序;
2、加入一个数字,然后再排序…………
*/
public class BubbleSortTest
{
static void sort(int[] arr)
{
System.out.print("{");
for(int x = 0 ; x<arr.length ; x++)
{
if(x<arr.length-1)
System.out.print(arr[x]+", ");
else
System.out.print(arr[x]+"}");
}
}
static void bubbleSort(int[] arr)//数组排序的方法(冒泡)
{
for(int x = 0 ; x<arr.length-1 ; x++)
{
for(int y = 0 ; y<arr.length-x-1 ; y++)
{
if(arr[y]>arr[y+1])
{
swap(arr,y,y+1);
}
}
}
}
static void swap(int[] arr,int x,int y)//互换赋值
{
int temp = arr[x];
arr[x] = arr[y];
arr[y] = temp;
}
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
int input = in.nextInt();//控制台输入要插入的数字
int[] array=new int[10];//创建一个10个数字的数组
for(int x = 0;x<array.length; x++)//给数组内数字随机赋值(0-100)
{
array[x]=(int)(Math.random()*100);
}
sort(array);//排序前的数组
System.out.println();
bubbleSort(array);//冒泡一下
sort(array);//排序后的数组
System.out.println();
System.out.println("-----------分割线---------");
//方法准备完毕,开始答题:
//创建一个多一个数字的数组……这个我也不知道怎么办,就这样吧……
int[] answerArr = new int[array.length+1];
answerArr[array.length]=input;
for(int x = 0;x<array.length;x++)
{
answerArr[x]=array[x];
}
System.out.println("插入的数为"+input);
sort(answerArr);
bubbleSort(answerArr);
System.out.println();
sort(answerArr);
}
}
|