/** * * @author Administrator * 功能:选择排序法 */ package com.test1; import java.util.Calendar; public class SelectSort { public static void main(String[] args) { // TODO Auto-generated method stub //int[] arr = { 1, 6, 0, -1, 9, -100, -90 }; int[] arr = new int[50000]; for (int i = 0; i < arr.length; i++) { //让程序随机产生一个1 - 10000个数 //Math.random会产生一个0到1的数 arr[i] = (int)(Math.random()*50000); } // //我认为第一个数就是最小 // int min = arr[0]; // //记录最小数的下标 // int minIndex = 0; Select select = new Select(); //在排序前打印系统时间 //Calendar是单开模式,在系统里面只有一个,且只需要一个实例,不是new 出来的 //Java共有23中模式 Calendar cal = Calendar.getInstance(); System.out.println("排序前:"+cal.getTime()); select.sort(arr); //在排序后打印系统时间 //因为是单开的,所有首先重新得到实例 cal = Calendar.getInstance(); System.out.println("排序后:"+cal.getTime()); // System.out.println("选择排序结果是:"); // for (int i = 0; i < arr.length; i++) { // System.out.print(arr[i]+" "); // } } } class Select{ //选择排序 public void sort(int[] arr){ for (int i = 0; i < arr.length; i++) { for (int j = i+1; j < arr.length; j++) { if(arr[i] > arr[j]) { int temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } } } }