洗牌算法
看面经的时候看到有洗牌算法的问题 题意就很简单 把 54 张扑克牌进行重排 使每张牌在每个位置上等概率的出现 是个小清新算法了 QAQ
#include <bits/stdc++.h> using namespace std; int a[110]; void init() { for(int i = 0; i < 54; i ++) a[i] = i; } int main() { init(); srand((unsigned int)time(NULL)); int temp = 54; while(temp) { swap(a[rand() % temp], a[temp - 1]); temp --; } for(int i = 0; i < 54; i ++) printf("%d\n", a[i]); return 0; }