插入排序,即是确定某个数在已经排好序的序列中的位置,就是从后往前,挨个比较.直到找到这个数前面是小于这个数的,就break,不用比较了,因为这之前都是排好序的.如果不懂请跑一边代码.
package com.qf.demo2;
/**
* 排序
* 插入
*
*
* @author Administrator
*
*/
public class Test {
public static void main(String[] args) {
int a[] = {9,8,1,4,2,5,6,10,3};
for (int i = 0; i <a.length-1 ; i++) {
for (int j = i+1; j >0; j--) {
if(a[j]<a[j-1]){
int temp = a[j];
a[j] = a[j-1];
a[j-1]= temp;
}else{
// 不需要交换 以后都不需要了
break;
}
}
}
for (int i : a) {
System.out.println(i);
}
}
}