排序之插入排序


  插入排序数组

/**
 * 对指定的 int 型数组按数字升序进行插入排序
 * @param a 待排序的数组
 */
public static void sortInsertion(int[] a) {
    int flag = 0;//标记须要插入的位置
    int temp = 0;//存储待插入的数
    for (int i = 1; i < a.length; i++) {
        temp = a[i];
        for (int j = i; j > 0; j--) {
            if (a[j-1] > temp) {
                a[j] = a[j-1];
                flag = j-1;
            }else {
                flag = j;
                break;
            }
        }
        a[flag] = temp;
    }
}