您的位置:首页 > 其它

给定N张扑克牌和一个随机函数,设计一个洗牌算法

2015-05-19 20:32 281 查看
#include <iostream>
#include <time.h>
using namespace std;

void swap(int &a, int &b){
int t = a;
a = b;
b = t;
}

void randomShuffle(int a[], int n){
for(int i = 0; i < n; ++i){
int j = rand() % (n - i) + i;
swap(a[i], a[j]);
}
}

int main(){
srand((unsigned)time(NULL));
int n = 9;
int a[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
randomShuffle(a, n);
for(int i = 0; i < n; ++i)
cout << a[i] << endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐