1.产生从 nStart到nEnd的连续不重复随机数
#include <time.h> // time(0)
#include<stdlib.h> // rand srand
#include <process.h> // getpid
int randNum(__in int nStart, __in int nEnd, __out std::vector<int> &vec)
{
for (int i = nStart; i <= nEnd; ++i)
{
vec.push_back(i);
}
srand(getpid());
for (int i = nEnd - nStart; i >= 1; --i)
{
std::swap(vec[i], vec[rand() % (nEnd - nStart)]);
}
return 0;
}