加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

选择排序java代码

发布时间:2020-12-14 04:46:20 所属栏目:百科 来源:网络整理
导读:/** * 选择排序 * * 原理:将最小值与数组第1个即array[0]交换,第二次则忽略array[0],直接从array[1]至array[array.length-1]中 * 选择出最小值与array[1]交换,以此类推 * * 与冒泡排序法区别在于交换次数减少 * @param a * @return */ public long [] Sele
/**
     * 选择排序
     * 
     * 原理:将最小值与数组第1个即array[0]交换,第二次则忽略array[0],直接从array[1]至array[array.length-1]中
     * 选择出最小值与array[1]交换,以此类推
     * 
     * 与冒泡排序法区别在于交换次数减少
     * @param a
     * @return 
     */
    public long[] SelectSort(long[] a){
        
        for(int i=0 ; i < a.length ; i++){
            int minIndex = i;
            int j=i+1 ; j < a.length ; j++){
                if(a[minIndex] > a[j]){
                    minIndex = j;
                }
            }
            if(i != minIndex){
                a[i] = a[i] ^ a[minIndex];
                a[minIndex] = a[minIndex] ^ a[i];
                a[i] = a[i] ^ a[minIndex];
            }
            
        }
        
        return a;
    }
原理:将最小值与数组第1个即array[0]交换,第二次则忽略array[0],直接从array[1]至array[array.length-1]中选择出最小值与array[1]交换,以此类推。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读