
Re: [問題] 如何讓timer+imagelist隨機圖不重複?

: 想要讓六個號碼彼此之間不重複,GOOGLE研究半天研究不出個所以
: 拜託高手指點一下方向!!
排列組合
http://ppt.cc/KG6s
從n個相異物不重複的取出m個之組合數
如果你要求效率很好的話,就是把所有的結果預先產出,
然後再程式初始化時載入,省去每次產生隨機數的成本,
只要隨機挑一組樣本,執行效率非常好。
博弈遊戲的機率也是類似作法。
那單純一點的做法
你把1~n的數,初始化時放到一個vector內
每次取rand(vector.count)的隨機數,取到的就移出
所以假設 1~9取3個任意不重複數
ex: vec = {1,2,3,4,5,6,7,8,9}
1.rand(vec.count)//count = 9 -> get vec[3] -> offset 3 移出vec
2.rand(vec.count)//count = 8 -> get vec[3] -> offset 3 移出vec
3.rand(vec.count)//count = 7 -> get vec[3] -> offset 3 移出vec
最後得到 {4,5,6}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.240.239.100
※ 文章網址: http://www.ptt.cc/bbs/C_Sharp/M.1397582512.A.CC6.html
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章