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

选择排序

时间:2015-11-16 06:04:53      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:

 

核心思想:

  扫描所有的元素,得到最小的元素,并将最小的元素与左边第一个元素进行交换。再次扫描除第一位置的所有元素,得到最小的元素,与左边第二个元素进行交换,以此类推

// 选择排序
    public void selectSort(){
        int min = 0;                          //找到最小的值及其下标位置
        long tmp = 0L;    
        for(int i = 0; i < elems -1; i++){    //比较elems -1次
            min = i;
            for(int j = i + 1; j < elems; j++) {
                
                if(arr[j] < arr[min]) {
                    min = j;                 //指到最小的下标
                }
                
            }
            
            //将最小元素放到当前i位置,将i位置元素放到最小元素的位置,完成交换
            tmp = arr[i];
            arr[i] = arr[min];
            arr[min] = tmp;
        }
    }

 

 

 

 

 

 

 

 

 

 

 

 

选择排序

标签:

原文地址:http://www.cnblogs.com/thinkpad/p/4967898.html

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