我想在C++中洗牌一個數組,每次程序運行時,我想要有一個不同的隨機洗牌。我有myArray
的長度。目前我正在使用:隨機隨機洗牌C++數組(每次不同)
random_shuffle(myArray, myArray+N)
但這樣每次都會產生相同的洗牌。要包括一個隨機數,我嘗試過:
random_shuffle(myArray, myArray+N, rand()%i)
但我得到錯誤cannot convert parameter 3 from 'int' to 'int&'
。
我認爲使用shuffle
函數取而代之,根據this example,但似乎我堅持使用2011年以前的編譯器。
對不起,如果這是一個非常愚蠢的問題。對於這個特殊問題,我找不到任何東西,谷歌只是告訴我如何創建一個洗牌算法。
有沒有愚蠢的問題,只有問題。有一段時間我甚至無法走路。 – SlySherZ 2014-11-06 18:37:46
[此鏈接](http://www.cplusplus.com/reference/algorithm/random_shuffle/)真的很好的參考。請看 – 2014-11-06 18:38:50
'rand()%i'的類型,它不是函數或可調用對象,請仔細看看示例 – user2485710 2014-11-06 18:38:59