c++ random_shuffle(随机打乱序列)

对于一个数组a,我想打乱它原有的顺序,那么可以用该函数。
注意,如果要真正的随机,需要srand(time(NULL))操作,因为random_shuffle用的是随机数发生器,还记得rand()吗,如果不srand随机数种子,得到的随机数是固定的。

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int a[1024];
    for(int i=0;i<1024;i++)a[i]=i;
    srand(time(NULL));
    random_shuffle(a,a+1024);
    //以上代码能得到一个permutation。
    return 0;
}


版权声明:本文为weixin_44925547原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。