package com.love.test; import java.util.Scanner; /** * @author huowolf * 选择排序实现 *思想:每趟从待排序的记录序列中选择keyword最小的记录放置到已排序表的最前位置,直到所有排完。*/ public class SelectSort { public static void selectSort(int[] arr) { for(int i=0;i<arr.length;i++) { int k=i; //k用来保存数组中未排序元素值最小的下标 //元素[i]依次与i后面的所以数比較 for(int j=k+1;j<arr.length;j++) { if(arr[k]>arr[j]) k=j; } if(k!=i) { int temp = arr[i]; arr[i] = arr[k]; arr[k] = temp; } } } public static void main(String[] args) { int[] arr = new int [10]; System.out.println("请依次输入十个整数:"); Scanner s = new Scanner(System.in); for(int i=0;i<10;i++) { arr[i] = s.nextInt(); } System.out.println("排序前的顺序为:"); for(int i=0;i<10;i++) { System.out.print(arr[i]+" "); } selectSort(arr); System.out.println(" 排序后的顺序为:"); for(int i=0;i<10;i++) { System.out.print(arr[i]+" "); } } }