美文网首页
java中的排序---选择排序

java中的排序---选择排序

作者: zhouzhuo933 | 来源:发表于2017-01-07 11:19 被阅读0次

    1.思路

    选择排序的思想是,每一趟在剩余数字选出一个最大(最小)的数,与前一个比较。把该数放到前面已经排好的队列中,整个过程下来,这一列数据就排好了。

    2.代码实现

    private int[] selectUpSort(int[] a){  
      //选择排序的思想是一次只排一个 小的放前面  每一次下来都会选择最小的一个   
    /* for(int i=0;i<a.length-1;i++){   
         //交换了很多次   方法不妥 
           for(int j=i+1;j<a.length-1;j++){   
             if(a[j]<a[i]){    
                int tem = a[j];  
                    a[j]= a[i];     
                   a[i] = tem;   
             }      
      }  
      }*/  
     // 选择排序的思想是一次只排一个 小的放前面  每一次下来都会选择最小的一个  每一个与之前的那个比较 
       for (int i=0,k=0;i<a.length-1;i++,k=i){
                for (int j=0;j<i+1;j++){      
                  if(a[j]<a[k]){
                        k=j;   
                 }       
               a[k] = temp;   
            }   
     }  
      return a;
    }
    

    注释部分由于每次都和前面的交换,每一轮循环的时候可能会执行好多次与排好序的队列的交换。使用我们采用在余下的里面找到最小的,直接与之前的队列交换。

    相关文章

      网友评论

          本文标题:java中的排序---选择排序

          本文链接:https://www.haomeiwen.com/subject/ibcfbttx.html