成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

java實現(xiàn)選擇排序

morgan / 2326人閱讀

摘要:選擇排序就是把最大或者最小的數(shù)找出來后,從數(shù)組邊緣開始逐個地放置好。選擇排序的時間復(fù)雜度為這是一種不穩(wěn)定的排序。代碼實現(xiàn)如下記錄下最小值的位置交換兩個位置的值

選擇排序就是把最大或者最小的數(shù)找出來后,從數(shù)組邊緣開始逐個地放置好。

如下圖(這里我以找出最小的數(shù)字為例):

這種方法的基本步驟如下:
1.先從第一個元素開始,相鄰的兩個元素進行比較,最后得出第一次比較中最小的元素;
2.記錄好這個最小元素的位置,并把這個元素與第一個元素互換位置;
3.接著再從第二個元素開始,相鄰的兩個元素再進行比較,得出第二次比較中最小的元素;
4.記錄好這個最小元素的位置,并把這個元素與第二個元素互換位置;
5.如此類推......最終實現(xiàn)有序排列。

選擇排序的時間復(fù)雜度為O(N^2),這是一種不穩(wěn)定的排序。

代碼實現(xiàn)如下:

public static void selectionSort(int[] nums) {

for(int i = 0; i < nums.length-1; i++) {
    int location = i;
    for(int j = i; j < nums.length-1; j++) {
        if(nums[j+1] < nums[location]) {
            location = j+1;//記錄下最小值的位置
        }
    }
    //交換兩個位置的值
    if(location != i) {
        int temp = nums[i];
        nums[i] = nums[location];
        nums[location] = temp;
    }
}

}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/71313.html

相關(guān)文章

  • 基本排序 - Algorithms, Part I, week 2 ELEMENTARY SORTS

    摘要:我們討論比較排序算法的理論基礎(chǔ),并結(jié)合本章應(yīng)用排序和優(yōu)先級隊列算法。基本排序引入了選擇排序,插入排序和。描述了,一種保證在線性時間內(nèi)運行的排序算法。當(dāng)我們后續(xù)實現(xiàn)排序算法時,我們實際上將這個機制隱藏在我們的實現(xiàn)下面。 前言 上一篇:棧和隊列下一篇:歸并排序 排序是重新排列一系列對象以便按照某種邏輯順序排列的過程。排序在商業(yè)數(shù)據(jù)處理和現(xiàn)代科學(xué)計算中起著重要作用。在交易處理,組合優(yōu)化,天體...

    BLUE 評論0 收藏0
  • 【算法日積月累】1-選擇排序

    摘要:選擇排序算法實現(xiàn)實現(xiàn)選擇排序,記錄最小元素的索引,最后才交換位置說明交換兩個數(shù)組中的元素,在中有更簡單的寫法,這是的語法糖,其它語言中是沒有的。和語言中比較器的實現(xiàn)前面我們說到了,我們?yōu)榱送怀雠判蛩惴ǖ乃枷?,將所有的例子僅限在數(shù)組排序中。 showImg(https://segmentfault.com/img/remote/1460000017909538?w=1949&h=1080...

    neuSnail 評論0 收藏0
  • 八大排序算法Java實現(xiàn)

    摘要:向后移動位簡單選擇排序基本思想常用于取序列中最大最小的幾個數(shù)時。代碼實現(xiàn)循環(huán)次數(shù)選出最小的值和位置交換位置堆排序基本思想對簡單選擇排序的優(yōu)化。 概述 常見的八大排序算法,它們之間的關(guān)系如下: showImg(https://segmentfault.com/img/remote/1460000011395738?w=880&h=671); 直接插入排序 希爾排序 簡單選擇排序 堆排序...

    Coly 評論0 收藏0
  • Java常用的八種排序算法與代碼實現(xiàn)精解

    摘要:直接插入排序的算法重點在于尋找插入位置。也稱縮小增量排序,是直接插入排序算法的一種更高效的改進版本。希爾排序是非穩(wěn)定排序算法。簡單選擇排序常用于取序列中最大最小的幾個數(shù)時。將新構(gòu)成的所有的數(shù)的十位數(shù)取出,按照十位數(shù)進行排序,構(gòu)成一個序列。 1.直接插入排序 直接插入排序算法是排序算法中最簡單的,但在尋找插入位置時的效率不高?;舅枷刖褪菍⒁粋€待排序的數(shù)字在已經(jīng)排序的序列中尋找找到一個插...

    2501207950 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<