不多说,看图和代码
package com.lyj.sort.insert; public class SelectionSort { /** * @param args */ public static void main(String[] args) { int[] array = { 100, 22, 1, 8, 5, 20, 13, 1, 9, 43, 24 }; // 排序前 for (int i : array) { System.out.print(i + " "); } System.out.println(); // 排序 selectionSort(array); // 排序后 for (int i : array) { System.out.print(i + " "); } } private static void selectionSort(int[] array) { for (int i = 0; i < array.length; i++) { for (int j = i + 1; j < array.length; j++) { //前面已经排好序,从当前次序的后面开始依次比较 if (array[i] > array[j]) { int temp = array[i]; array[i] = array[j]; array[j] = temp; } } // System.out.print("第 " + i + "次排序: "); // for (int index : array) { // System.out.print(index + " "); // } // System.out.println(); } } }