`
寂地流年
  • 浏览: 26653 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

排序-选择排序

阅读更多
package cn.netjava.xuanze;

import java.util.Scanner;
/**
 * 选择法对数组中10个整数由小到大排序。
 * 基本思路:
 * 先将十个数中最小的数与a[0]兑换,再将a[1]到a[9]中最小的数与a[1]对换,
 * 每比较一轮,找出一个未排序的数中最小的一个,共比较9轮.
 * @author Administrator
 *
 */

public class XuanZe {

		
	// 对10个数就行排序

	public static void findMin(int a[]) {

		int i, j, k, t;
		//
		for (i = 0; i < 9; i++) {
			k = i;

			for (j = i + 1; j < 10; j++) {
				if (a[j] < a[k]) {//如果a[j],比a[k]小,那么把a[k]放最前面。
					k = j;
				}
				t = a[k];
				a[k] = a[i];
				a[i] = t;
			}
		}

	}

	/**
	 * @param args由小到大排序
	 */
	public static void main(String[] args) {

		// 创建一个扫描对象,输入10个数字!
		Scanner scanner = new Scanner(System.in);
		int[] a = new int[10];
		for (int i = 0; i < 10; i++) {

			a[i] = scanner.nextInt();

		}
		// 排序
		findMin(a);

		for (int s = 0; s < a.length; s++) {
			System.out.println("a[" + s + "] : " + a[s]);
		}

	}

}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics