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

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

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

    隨筆-126  評(píng)論-247  文章-5  trackbacks-0

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

    首先在未排序序列中找到最?。ù螅┰?,存放到排序序列的起始位置,然后,再?gòu)氖S辔磁判蛟刂欣^續(xù)尋找最?。ù螅┰?,

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

    C++ 實(shí)現(xiàn)代碼片段

       
    //簡(jiǎn)單選擇排序,按自然順序
    void selectsort(Element array[], int len){
        
    int index, min, temp;
        
    for(int i = 0; i < len - 1; i++){  // N - 1 趟
            min = i;
            
    //查找選擇最小元素值的下標(biāo)索引值
            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 實(shí)現(xiàn)代碼片段


    //簡(jiǎn)單選擇排序,按自然順序
    public static void selectsort(int[] array){
        
    int min, index, temp;
        
    for(int i = 0; i < array.length - 1; i++){  // N - 1 趟
            min = i;
            
    //查找選擇最小元素值的下標(biāo)索引值
            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++ 實(shí)現(xiàn)完整代碼

       
    /**
     * <!--
     * 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"
       
    //簡(jiǎn)單選擇排序,按自然順序
    void selectsort(Element array[], int len){
        
    int index, min, temp;
        
    for(int i = 0; i < len - 1; i++){  // N - 1 趟
            min = i;
            
    //查找選擇最小元素值的下標(biāo)索引值
            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;
            }
        }
    }
       
    //遍歷數(shù)組
    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 實(shí)現(xiàn)完整代碼

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

        
    private Sort(){}
        
        
    //簡(jiǎn)單選擇排序,按自然順序
        public static void selectsort(int[] array){
            
    int min, index, temp;
            
    for(int i = 0; i < array.length - 1; i++){  // N - 1 趟
                min = i;
                
    //查找選擇最小元素值的下標(biāo)索引值
                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) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 久久亚洲高清观看| 成人自慰女黄网站免费大全| 亚洲色中文字幕无码AV| 韩国欧洲一级毛片免费| 午夜无码A级毛片免费视频| 国产亚洲精品美女久久久久| 亚洲卡一卡2卡三卡4麻豆| 亚洲深深色噜噜狠狠爱网站| 国产国产人免费人成免费视频| 久久成人国产精品免费软件| 在线视频网址免费播放| 国产亚洲高清在线精品不卡| 亚洲婷婷第一狠人综合精品| 亚洲国产人成在线观看69网站| 国产亚洲精品精品国产亚洲综合| 免费毛片网站在线观看| 日本三级2019在线观看免费| 久久99精品视免费看| 在线播放免费人成毛片乱码| 黄床大片免费30分钟国产精品| 黄页网站在线视频免费| 春暖花开亚洲性无区一区二区| 亚洲精品亚洲人成在线播放| 91亚洲导航深夜福利| 亚洲国产精品自在线一区二区 | 亚洲成av人片不卡无码| 亚洲AV午夜福利精品一区二区| 国产综合亚洲专区在线| 亚洲精品无码日韩国产不卡?V| 国产精品嫩草影院免费| 日本免费一二区在线电影| 韩国二级毛片免费播放| 毛片在线免费视频| 久久久久久免费视频| 中文字幕无码免费久久99| 在线观看无码AV网站永久免费| 很黄很色很刺激的视频免费| 成人A级毛片免费观看AV网站| 99re热免费精品视频观看| 日本一区二区三区免费高清| 一个人在线观看视频免费|