选择排序SelectSort

/**
 * 
 * @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;
                }                
            }
        }
    }
}
原文地址:https://www.cnblogs.com/beautiful-code/p/5344363.html