java選擇排序

package com.zz.sort;

import java.util.Random;

public class SelectionSort {

	public static void main(String[] args) {
		int iLength = 1000;
		int[] iArgs = new int[iLength];
		for(int i = 0; i < iLength; i++){
			Random objRandom = new Random();
			iArgs[i] = objRandom.nextInt(1000);
		}
		new SelectionSort().selectSort(iArgs);
		for(int i = 0; i <  iArgs.length ; i++ ) {
			System.out.print(iArgs[i] + " ");
		}
	}
	
	/**
	 * 選擇排序
	 * 
	 * @param args 數組
	 */
	private void selectSort(int[] args) {
		for(int i = 0; i < args.length ; i++) {
			int iIndex = i;
			int iTarget =i ;
			int temp = args[iIndex]; 
			//從i位置開始找到最小的數,跟數組小標爲i的值交換
			for(int j = iIndex ; j < args.length - 1; j++) {
				if(temp > args[j+1] ) {
					 temp = args[j + 1];
					 iTarget = j + 1;
				}
			}
			args[iTarget] =  args[iIndex];
			args[iIndex] = temp;
		}
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章