本文给大家汇总介绍了3种c++实现生成不重复的随机数的函数,十分的简单实用,有需要的小伙伴可以参考下。
C++编写生成不重复的随机数代码
vectorgetRandom(int total) { srand((int)time(NULL)); std::vector input = *new std::vector (); for (int i = 0; i output = *new vector (); int end = total; for (int i = 0; i ::iterator iter = input.begin(); int num = random()%end; iter = iter+num; output.push_back(*iter); input.erase(iter); end--; } return output; }
再来一例:
void permutation(int n, int *z_array) { int i, j, k, z; int buffer[N]; /* 初始化数组 */ for (i=0; i
方法三:来个复杂点的
#include#include #include "iostream" #include #define N 53 using namespace std; //print array void display(int *a) { for (int i =0;i
以上3种方法均可实现生成不重复的随机数,具体的效率如何,小伙伴们自己测试下吧。
以上就是C++编写生成不重复的随机数代码的详细内容,更多请关注0133技术站其它相关文章!