哈喽,大家好!本章将介绍针对数组的经典排序法之三——插入排序,开始学习吧!
插入排序(Insertion Sort)
插入排序步骤:
- 从第2个值开始,向后扩展轮数
- 从后向前遍历,执行插入元素
代码
public class InsertionSort {
public static void main(String[] args) {
int[] a = new int[10];
for (int i = 0; i < a.length - 1; i++) {
a[i] = (int) (Math.random() * 100);
}
System.out.println(Arrays.toString(a));
for (int i = 0; i < a.length; i++) {
int tmp = a[i];
boolean flag = true;
for (int j = i-1; j >= 0; j--) {
if (tmp < a[j]) {
a[j+1]=a[j];
}else{
flag = false;
a[j+1]=tmp;
break;
}
}
if(flag){
a[0]=tmp;
}
}
System.out.println(Arrays.toString(a));
}
}