码迷,mamicode.com
首页 > 编程语言 > 详细

选择排序

时间:2015-06-14 16:51:19      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:选择排序

/*
	选择排序:
		3 1 6 2 5
		
		算法:找出最小值,然后这个最小值和最前面的数据交换位置。
*/
public class SelectSort{
	
	public static void main(String[] args){
		
		int[] a = {3 ,1 ,6 ,2 ,5};
		
		//选择排序
		for(int i=0;i<a.length-1;i++){
			
			//假设第一个数据是最小值
			//记录最小值元素的下标
			int min = i;
			
			for(int j=i+1;j<a.length;j++){
				
				if(a[min]>a[j]){
					//给min重新赋值
					min = j;
				}
			}
			
			//考虑交换位置.
			if(min != i){
				int temp;
				temp = a[i];
				a[i] = a[min];
				a[min] = temp;
			}
			
		}
		
		//输出
		for(int i=0;i<a.length;i++){
			System.out.println(a[i]);
		}
	}
	
}

/*

3 1 6 2 5
第一次循环:
1 3 6 2 5

3 6 2 5
第二次循环:
2 6 3 5

6 3 5
第三次循环:
3 6 5

6 5
第四次循环:
5 6


*/


选择排序

标签:选择排序

原文地址:http://hangtiangazi.blog.51cto.com/8584103/1661775

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!