不多说,看图和代码
package com.lyj.sort.insert; public class InsertionSort { /** * @param args */ public static void main(String[] args) { int[] array = { 5, 2, 4, 6, 1, 3, 22, 100, 7 }; // 排序前 for (int i : array) { System.out.print(i + " "); } System.out.println(); // 排序 insertionSort(array); // 排序后 for (int i : array) { System.out.print(i + " "); } } private static void insertionSort(int[] array) { for (int i = 0; i < array.length - 1; i++) { for (int j = i; j >= 0; j--) { // 第二次从后向前依次比较 if (array[j] > array[j + 1]) { int temp = array[j]; array[j] = array[j + 1]; array[j + 1] = temp; } } } } }