首页 > 编程语言 > 详细

选择排序

时间:2017-11-12 13:52:56      阅读:225      评论:0      收藏:0      [点我收藏+]

找到数组中的最小(最大)元素,将它和数组的第一个元素比较后交换,在剩下的元素中再找最小(最大)的元素,将它和第二个元素比较交换,以此类推。

这种排序在剩余的元素里不断选择最小(最大)者。

package sort20171101;

import java.util.*;

public class Selection {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        int []a = new int[20];
        int n;
        Scanner in = new Scanner(System.in);
        n = in.nextInt();
        for(int i = 0; i < n; i++) {
            a[i] = in.nextInt();
        }
        
        //选择排序
        
        for(int i = 0; i < n; i++) {
            int min = i;
            for(int j = i; j < n; j++) {
                if(a[j] < a[min]) {
                    min = j;
                }
            }
            int temp;
            temp = a[i];
            a[i] = a[min];
            a[min] = temp;
        }
        
        for(int i = 0; i < n; i++) {
            System.out.println(a[i]);
        }

    }

}

 

选择排序

原文:http://www.cnblogs.com/rainbowsweety/p/7821469.html

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