<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-126  評論-247  文章-5  trackbacks-0

        
    選擇排序(Selection sort)是一種簡單直觀的排序算法。

    首先在未排序序列中找到最?。ù螅┰兀娣诺脚判蛐蛄械钠鹗嘉恢?,然后,再從剩余未排序元素中繼續尋找最?。ù螅┰?,

    然后放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。

    C++ 實現代碼片段

       
    //簡單選擇排序,按自然順序
    void selectsort(Element array[], int len){
        
    int index, min, temp;
        
    for(int i = 0; i < len - 1; i++){  // N - 1 趟
            min = i;
            
    //查找選擇最小元素值的下標索引值
            for(index = i + 1; index < len; index++){
                
    if(array[min] > array[index])
                    min 
    = index;
            }
            
    //交換
            if(min != i){
                temp 
    = array[min];
                array[min] 
    = array[i];
                array[i] 
    = temp;
            }
        }
    }
       


    Java 實現代碼片段


    //簡單選擇排序,按自然順序
    public static void selectsort(int[] array){
        
    int min, index, temp;
        
    for(int i = 0; i < array.length - 1; i++){  // N - 1 趟
            min = i;
            
    //查找選擇最小元素值的下標索引值
            for(index = i + 1; index < array.length; index++){
                
    if(array[min] > array[index])
                    min 
    = index;
            }
            
    //交換
            if(min != i){
                temp 
    = array[min];
                array[min] 
    = array[i];
                array[i] 
    = temp;
            }
        }
    }
      


    C++ 實現完整代碼

       
    /**
     * <!--
     * File   : selectsort.h
     * Author : fancy
     * Email  : fancydeepin@yeah.net
     * Date   : 2013-02-06
     * --!>
     
    */
    #include 
    <stdio.h>
    #include 
    <stdlib.h>
    #define length(array) sizeof(array) / sizeof(array[0])
    #define Element int
    #define format "%d"
       
    //簡單選擇排序,按自然順序
    void selectsort(Element array[], int len){
        
    int index, min, temp;
        
    for(int i = 0; i < len - 1; i++){  // N - 1 趟
            min = i;
            
    //查找選擇最小元素值的下標索引值
            for(index = i + 1; index < len; index++){
                
    if(array[min] > array[index])
                    min 
    = index;
            }
            
    //交換
            if(min != i){
                temp 
    = array[min];
                array[min] 
    = array[i];
                array[i] 
    = temp;
            }
        }
    }
       
    //遍歷數組
    void visit(Element array[], int len){
        
    for(int i = 0; i < len; i++){
            printf(format, array[i]);
        }
    }
       

     

       
    /**
     * <!--
     * File   : SelectSort.cpp
     * Author : fancy
     * Email  : fancydeepin@yeah.net
     * Date   : 2013-02-06
     * --!>
     
    */
    #include 
    "selectsort.h"

    int main() {

        Element array[
    10= {4725869103};
        selectsort(array, length(array));
        visit(array, length(array));
        
    return 0;
    }
       


    Java 實現完整代碼

       
    package net.yeah.fancydeepin.sort.select;
    /**
     * <!--
     * Author : fancy
     * Email  : fancydeepin@yeah.net
     * Date   : 2013-02-06
     * --!>
     
    */
    public class Sort {

        
    private Sort(){}
        
        
    //簡單選擇排序,按自然順序
        public static void selectsort(int[] array){
            
    int min, index, temp;
            
    for(int i = 0; i < array.length - 1; i++){  // N - 1 趟
                min = i;
                
    //查找選擇最小元素值的下標索引值
                for(index = i + 1; index < array.length; index++){
                    
    if(array[min] > array[index])
                        min 
    = index;
                }
                
    //交換
                if(min != i){
                    temp 
    = array[min];
                    array[min] 
    = array[i];
                    array[i] 
    = temp;
                }
            }
        }
           
    }
      

     

      
    package test;
    /**
     * <!--
     * Author : fancy
     * Email  : fancydeepin@yeah.net
     * Date   : 2013-02-06
     * --!>
     
    */
    import net.yeah.fancydeepin.sort.select.Sort;

    public class Test {

        
    public static void main(String[] args) {
            
            
    int[] array = {4725869103};
            Sort.selectsort(array);
            
    for(int obj : array){
                System.out.print(obj);
            }
        }
    }
       


     



      
    posted on 2013-02-06 09:52 fancydeepin 閱讀(744) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲精品久久久久无码AV片软件| 国产成人亚洲综合无码精品| 亚洲国产日韩在线| 精品无码人妻一区二区免费蜜桃| 亚洲AV综合色区无码一区| 免费a级毛片无码a∨免费软件| 亚洲乱码中文字幕久久孕妇黑人| 国产一级a毛一级a看免费人娇| 亚洲精品无码不卡在线播放HE| 今天免费中文字幕视频| 亚洲国产高清视频| 7723日本高清完整版免费| 亚洲一级毛片视频| 好吊妞998视频免费观看在线| jlzzjlzz亚洲jzjzjz| 女人被男人躁的女爽免费视频| 亚洲国产精品无码久久| 免费A级毛片在线播放不收费| 一进一出60分钟免费视频| 亚洲成a人片在线观看无码| 99久久久国产精品免费牛牛 | 18禁超污无遮挡无码免费网站国产| 亚洲综合久久一本伊伊区| 日韩一级视频免费观看| 免费理论片51人人看电影| 亚洲精品色在线网站| 色噜噜亚洲精品中文字幕| 最近中文字幕高清免费中文字幕mv| 亚洲中文字幕AV在天堂| 亚洲精品久久久www| 亚洲成av人在线观看网站| 亚洲国产精品一区二区第四页| 亚洲精品久久无码| 不卡精品国产_亚洲人成在线| 99在线免费观看视频| 亚洲成av人在线观看网站| 亚洲产国偷V产偷V自拍色戒| 无码av免费毛片一区二区| 一边摸一边爽一边叫床免费视频| 亚洲高清视频免费| 亚洲免费在线视频观看|