`
狂盗一枝梅
  • 浏览: 14112 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

【数据结构】【排序】选择排序

阅读更多

       选择排序的核心思想就是从前往后依次找到最小的数放到前面,第一次找0~n-1之间最小的数放到0上;第二次找1~n-1之间最小的数放到1上,依次类推,但是只找n-1次,也是就是说最后一次不要找了,因为最后一个数字一定是有序的。

import java.util.Scanner;

public class SelectSort{
	public static void main(String args[]){
		Scanner scanner=new Scanner(System.in);
		int total=scanner.nextInt();
		int[] array=new int[1024];
		for(int i=0;i<total;i++){
			array[i]=scanner.nextInt();
		}
		selectSort(array,total);
		output(array,total);
	}
	public static void output(int[] array,int total){
		for(int i=0;i<total;i++){
			System.out.print(array[i]+" ");
		}
		System.out.println();
	}
	public static void selectSort(int[] array,int total){
		for( int i=0;i<=total-2;i++){
			int minIndex=i;
			for(int j=i+1;j<=total-1;j++){
				if(array[minIndex]>array[j]){
					minIndex=j;	
				}
			}
			if(minIndex!=i){
				int temp=array[i];
				array[i]=array[minIndex];
				array[minIndex]=temp;
			}
		}
	}
}

 

   测试数据:

输入:
10
7 4 1 8 5 2 9 6 3 0
输出:
0 1 2 3 4 5 6 7 8 9
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics