例如,生成一个从0到51的非重复随机数列表。[0,51]
for(int i = 0;i<52;i++)
{
//print out 0,1,2,3,4,5,6,7,8,....,51.
}
答案 0 :(得分:3)
创建array
或vector
并随机随机播放。
vector<int> v;
for(int i = 0; i < 52; ++i)
v.push_back(i);
std::random_shuffle(v.begin(), v.end()); //need #include <algorithm>
第一个随机数为v[0]
,您有52个非重复随机数
答案 1 :(得分:1)
看起来你正试图将一副纸牌洗牌作为家庭作业;)
以下是Python中帮助您入门的代码:
def shuffle(deck):
for i in xrange(len(deck)):
rand_index = random.randint(i, len(deck) - 1)
temp = deck[i]
deck[i] = deck[rand_index]
deck[rand_index] = temp