插空排序-原理
将未排序数组第一个元素当作首位,第二个元素看成末位,将其他元素进行插空排序
插空排序案例解析
实现代码
public static void main(String[] args) {
int a[]= {5,3,4,2,7};
for (int i = 1; i < a.length; i++) { //i是循环次数
int temp=a[i]; //接受一下插空元素
int j=i; //j来进行位置交换
while(j>0&&temp<a[j-1]) { //与前面元素比较,实现前后交换
a[j]=a[j-1];
j--;
}
if(i != j) {
a[j]=temp;
}
}
System.out.println(Arrays.toString(a));
}
注意:插空时需要设置结束开关,通过j>0实现。