首页 > 编程语言 > 详细

使用选择排序法对数组进行排序

时间:2017-03-16 03:30:25      阅读:131      评论:0      收藏:0      [点我收藏+]
int[] array = new int[10];
		//生成随机数对象
		Random random = new Random();
		for (int i = 0; i < array.length; i++) {
			array[i] = random.nextInt(50);
			System.out.print(array[i]+" ");
		}
		System.out.println("\n排序后:");
		int index;
		for (int i = 1; i < array.length; i++) {
			index = 0;
			for (int j = 1; j < array.length-i; j++) {
				if (array[j]>array[index]) {
					//查找最大值
					index = j;
				}
			}
			//交换array.length-i和index(最大值)位置的两个数
			int temp = array[array.length-i];
			array[array.length-i] = array[index];
			array[index] = temp;
		}
		//排序后的输出
		for (int i = 0; i < array.length; i++) {
			System.out.print(array[i]+" ");
		}

//每次从待排序的数组元素中选出最小(最大)的一个元素,顺序放在已排序好的数组的最后,直到全部待排序的数据元素全部排完。

————————

选择排序法:遇到重复的值不会做任何处理,如果程序中允许数组中有重复值的情况下,建议用此方法。因为它的数据交换次数最少,相对速度也会略微提升

本文出自 “IT菜鸟” 博客,请务必保留此出处http://mazongfei.blog.51cto.com/3174958/1907000

使用选择排序法对数组进行排序

原文:http://mazongfei.blog.51cto.com/3174958/1907000

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!