爬旧文想说充实一下自己的想法
文章有点旧
(是对于洗牌的写法)
但对于stonehomelaa版友提出来的第二个方法有点疑问
为什么被对换的牌是
j = rand() % (52-i);
而不是
j = rand() % (52);
是都可以吗? 还是这样做会出现问题?
※ 引述《stonehomelaa (cousin)》之铭言:
: ※ 引述《papalun (谜样人物)》之铭言:
: : for (i=0;i<52;i++)
: : {
: : j=rand()%52;
: : temp=A[i];
: : A[i]=A[j];
: : A[j]=temp;
: : }
: 本来我也认为打乱阵列是这么做的
: 不过之前看了深度学习C++网站上的试读章节
: 里面范例有提到两种做法
: 其一是阵列元素由后往前与其前的随机位置对调
: for (i = 52 - 1; i > 0; i