📄 test.java
字号:
import java.util.*;
public class Test{
public int[] insertSort(int[] array){ //对整型数组a进行插入排序,在a[0]处设置监视哨
//先将序列中的第一个元素看成是一个有序的子序列
int j;
int[] a=new int[array.length];
copy(array,a);
for(int i=2;i<a.length;i++){
if(a[i]<a[i-1]){//需要将a[i]插入有序子表中
a[0]=a[i]; //复制为哨兵
a[i]=a[i-1];
for( j=i-2;a[0]<a[j];j--)
a[j+1]=a[j]; //记录后移
a[j+1]=a[0]; //插入到正确位置
}
}
return a;
}
public int[] bubbleSort(int[] array){ //冒泡排序
int[] a=new int[array.length];
int temp,j;
copy(array,a);
for(j=a.length-1;j>1;j--){
for(int i=1;i<a.length-1;i++){
if(a[i]>a[i+1]){
temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
}
}
}
return a;
}
public void copy(int[] array,int[] a){
for(int i=0;i<array.length;i++)
a[i]=array[i];
}
public static void main(String args[]){
Test t=new Test();
Random r=new Random();
int size=1000;//数组个数
int randomArray[]=new int[size]; //定义一个随机数组
int sortedArray[]=new int[size]; //定义一个排序数组
//生成一个随机数组
for(int i=1;i<size;i++)
randomArray[i]=r.nextInt()%1000; //再随机数组中存入10个随机数
//打印随机数组
System.out.println("The random array is:");
for(int i=1;i<size;i++)
System.out.print(randomArray[i]+" ");
System.out.println();
//用插入排序法排序
sortedArray=t.insertSort(randomArray);
System.out.println("Use inserSort,the sorted array is:");
for(int i=1;i<size;i++)
System.out.print(sortedArray[i]+" ");
System.out.println();
//用插入排序法排序
sortedArray=t.bubbleSort(randomArray);
System.out.println("Use bubbleSort,the sorted array is:");
for(int i=1;i<size;i++)
System.out.print(sortedArray[i]+" ");
System.out.println();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -