题目:对10个数进行排序
程序分析:可以利用选择法,
即从后9个比较过程中,选择一个最小的与第一个元素交换,
以此类推,即用第二个元素与后8个进行比较,并进行交换。
public class 第二十八题数组的选择排序 { public static void main(String[] args) { /* * 思路:从后面的数组中选择出最小的一个, 放到未排序数组的最左边 */ int a[] = new int[] { 1, 3, 9, 7, 4, -1, 2, 0, -10, 20 }; selectionSort(a); //打印数组 for (int m : a) { System.out.print(m + " "); } } // 选择排序 public static void selectionSort(int[] arr) { int min; // 遍历数组 for (int i = 0; i < arr.length; i++) { min = arr[i]; // 从未排序的数组中找出最小值,放到arr[i]中 for (int j = i; j < arr.length; j++) { if (arr[j] < min) { min = arr[j]; arr[j] = arr[i]; arr[i] = min; } } } }}