📄 insertsort.java
字号:
public class InsertSort{
public static void main(String args[]){
int array[] = {55,2,6,-4,32};
System.out.println("数据原始顺序:");
for(int i=0; i<array.length; i++) {
System.out.print(array[i] + "\t");
}
System.out.println();
InsertSort b = new InsertSort();
int[] result = b.isort(array);
System.out.println("\n排序后:");
for(int i=0; i<result.length; i++) {
System.out.print(result[i] + "\t");
}
}
public int[] isort(int a[]) {// 插入排序
int inserter,index,size = a.length;
System.out.println("\n插入排序过程:");
for(int i=1; i<size; i++) {
// 从第2个元素开始,共执行size-1轮
inserter = a[i];
index = i - 1;
// 寻找插入点
while(index>=0 && inserter<a[index]) {
a[index+1] = a[index]; // 后挪一个位置
index--;
}
a[index+1] = inserter; // 插入
// 比较一轮后就输出已排序和未排序序列
System.out.print("第" + i + "轮:");
for(int j=0; j<size; j++) {
System.out.print(a[j] + " , ");
if(j==i)
// 打印已排序与未排序数据的分界线
System.out.print(" || ");
}
System.out.println();
}
return a;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -