洗牌演算法(不重複亂數排序) - Mazs's Notes - 痞客邦

文章推薦指數: 80 %
投票人數:10人

目的:把陣列內容搞亂複雜度log(n) 比每亂數新增一個再去裡面判斷快太多了絕不可能重複因為他是先排好陣列再亂數兩兩 ... 關閉廣告 Mazs'sNotes 跳到主文 因版面過窄所以有些程式碼會自動換行複製後要記得補齊到同一行 部落格全站分類:不設分類 相簿 部落格 留言 名片 Dec08Thu201111:40 洗牌演算法(不重複亂數排序) 目的:把陣列內容搞亂 複雜度log(n) 比每亂數新增一個再去裡面判斷快太多了 絕不可能重複 因為他是先排好陣列再亂數兩兩交換 =============================================== intx[10]={0};   for(inti=0;i<=9;i++){ x[i]=i; //將x陣列的1~10元素依序填入資料,例如x[1]=1,x[2]=2 }     for(inti=0;i<=x.length;i++){ intn1=rand()%10; //產生0~9的亂數 intn2=rand()%10; //將陣列資料進行交換(打散) inttemp=x[n1]; x[n1]=x[n2]; x[n2]=temp;   } =============================================== 也可用在字串Array 可以先把StringArray內容放進Map裡 前面的key為整數 把key亂數排序後 再把相對應的value>String放進陣列裡 文章標籤 不重複亂數 洗牌演算法 全站熱搜 創作者介紹 cookiesp Mazs'sNotes cookiesp發表在痞客邦留言(0)人氣() 全站分類:散文筆記個人分類:Java此分類上一篇:java物件比對 此分類下一篇:Java-算質數 上一篇:Android編譯,反編譯,反反編譯 下一篇:Android-ListView 歷史上的今天 2012:Html5-UserAgent(判斷是何種行動裝置) 2012:Html5-Viewport(解析度,縮放比例,是否允許縮放) ▲top 留言列表 發表留言 熱門文章 文章分類 生活(0)NodeJS(7)Html5(2)雜(2)Android(88)大學生程式解題系統題目(5)Java(21)C++(1) 最新文章 文章精選 文章精選 2018二月(1) 2017十二月(1) 2017八月(2) 2015十一月(3) 2014十二月(1) 2014八月(1) 2014一月(1) 2013十二月(2) 2013八月(2) 2013七月(2) 2013五月(1) 2013四月(4) 2013三月(1) 2012十二月(3) 2012十一月(11) 2012十月(6) 2012九月(11) 2012八月(4) 2012七月(3) 2012六月(3) 2012五月(1) 2012四月(2) 2012一月(5) 2011十二月(5) 2011十一月(1) 2011十月(9) 2011九月(1) 2011八月(15) 2011七月(17) 2011六月(7) 所有文章列表 文章搜尋 最新留言 誰來我家 參觀人氣 本日人氣: 累積人氣: 回到頁首 回到主文 免費註冊 客服中心 痞客邦首頁 ©2003-2022PIXNET 關閉視窗



請為這篇文章評分?