欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java睡眠排序算法示例實(shí)現(xiàn)

 更新時(shí)間:2022年02月08日 15:48:04   作者:負(fù)債程序猿  
這篇文章主要為大家介紹了java睡眠排序算法的示例實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步

無聊逛論壇,發(fā)現(xiàn)了這張圖

真是厲害啊,這排序, 既有多線程,又有排序,還有l(wèi)ambda表達(dá)式,但是這是C#版本,作為一個(gè)入坑的Java愛好者,當(dāng)然要去試試Java版本了,廢話不多說,上代碼

/**
 * @author Marblog
 */
public class Main {
    public static void main(String[] args) {
        int[] nums = new int[]{235, 233, 110, 789, 5, 0, 1};
        for (int item : nums) {
            new Thread(() -> {
                try {
                    Thread.sleep(item);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                System.out.println(item);
            }).start();
        }
 
    }
}

代碼很粗略,很多bug。比如

(1) 搞不定負(fù)數(shù)。

(2)比如輸入數(shù)據(jù)很相近時(shí)會有誤差

(3)輸入數(shù)據(jù)很多時(shí),這些線程不能看作是同時(shí)啟動等等...

對于(1),可以用一個(gè)在恒正的函數(shù)把輸入映射成時(shí)間;

(2),可以乘個(gè)系數(shù),放大數(shù)據(jù)間的差,但是依然搞不定重復(fù)的數(shù)據(jù);

(3),試著讓算法在多個(gè)物理核上真正的并行起來

運(yùn)行結(jié)果

這是一種很神經(jīng)的算法,沒有十年腦血栓想不出來
原理就是開很多線程,線程數(shù)量等于你要排序的元素?cái)?shù)量,讓他們按照原數(shù)組順序輸出,過程中讓線程睡眠,睡的時(shí)長跟元素自身大小對應(yīng),所以越大睡的越久

以上就是java睡眠排序算法示例實(shí)現(xiàn)的詳細(xì)內(nèi)容,更多關(guān)于java睡眠排序的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 如何使用Java計(jì)算修改文件的MD5值

    如何使用Java計(jì)算修改文件的MD5值

    這篇文章主要介紹了如何使用Java計(jì)算修改文件的MD5值,MD5是一種被廣泛使用的密碼散列函數(shù),可以產(chǎn)生出一個(gè)128位(16字節(jié))的散列值,用于確保信息傳輸完整一致,需要的朋友可以參考下
    2023-04-04
  • 徹底搞懂Java多線程(一)

    徹底搞懂Java多線程(一)

    這篇文章主要給大家介紹了關(guān)于Java面試題之多線程和高并發(fā)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-07-07
  • 引入mybatis-plus報(bào) Invalid bound statement錯(cuò)誤問題的解決方法

    引入mybatis-plus報(bào) Invalid bound statement錯(cuò)誤問題的解決方法

    這篇文章主要介紹了引入mybatis-plus報(bào) Invalid bound statement錯(cuò)誤問題的解決方法,需要的朋友可以參考下
    2020-05-05
  • Java使用責(zé)任鏈模式處理學(xué)生請假問題詳解

    Java使用責(zé)任鏈模式處理學(xué)生請假問題詳解

    這篇文章主要介紹了Java使用責(zé)任鏈模式處理學(xué)生請假問題,結(jié)合實(shí)例形式詳細(xì)分析了責(zé)任鏈模式的概念、原理及Java使用責(zé)任鏈模式處理學(xué)生請假問題的相關(guān)步驟、操作技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2018-04-04
  • Java語言實(shí)現(xiàn)簡單FTP軟件 FTP軟件效果圖預(yù)覽之上傳功能(3)

    Java語言實(shí)現(xiàn)簡單FTP軟件 FTP軟件效果圖預(yù)覽之上傳功能(3)

    這篇文章主要為大家詳細(xì)介紹了Java語言實(shí)現(xiàn)簡單FTP軟件,F(xiàn)TP軟件效果圖預(yù)覽之上傳功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • Java Web編程之Servlet技術(shù)詳解

    Java Web編程之Servlet技術(shù)詳解

    這篇文章主要為大家詳細(xì)介紹了Java Web編程之Servlet技術(shù),Servlet就是一種實(shí)現(xiàn)了Servlet接口的類,它由Web容器(Tomcat/Jetty等)負(fù)責(zé)調(diào)用并創(chuàng)建,用于接收和響應(yīng)用戶請求,感興趣的小伙伴們可以參考一下
    2016-05-05
  • 你知道怎么從Python角度學(xué)習(xí)Java基礎(chǔ)

    你知道怎么從Python角度學(xué)習(xí)Java基礎(chǔ)

    這篇文章主要為大家詳細(xì)介紹了Python角度學(xué)習(xí)Java基礎(chǔ)的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • eclipse中自動生成javadoc文檔的方法

    eclipse中自動生成javadoc文檔的方法

    這篇文章主要介紹了eclipse中自動生成javadoc文檔的方法,是實(shí)用eclipse開發(fā)Java程序時(shí)非常實(shí)用的技巧,對于進(jìn)行Java項(xiàng)目開發(fā)具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2014-12-12
  • java實(shí)現(xiàn)微博后臺登錄發(fā)送微博

    java實(shí)現(xiàn)微博后臺登錄發(fā)送微博

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)微博后臺登錄發(fā)送微博的相關(guān)資料,感興趣的小伙伴們可以參考一下
    2016-07-07
  • gradle配置國內(nèi)鏡像的實(shí)現(xiàn)

    gradle配置國內(nèi)鏡像的實(shí)現(xiàn)

    這篇文章主要介紹了gradle配置國內(nèi)鏡像的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07

最新評論