C++自定義函數生成不重復的隨機數

bcf2 9年前發布 | 2K 次閱讀 C/C++ SQLlite

C++自定義函數生成不重復的隨機數

vector<int> getRandom(int total)
{
    srand((int)time(NULL));
    std::vector<int> input = new std::vector<int>();
    for (int i = 0; i < total; i++) {
        input.push_back(i);
    }
    vector<int> output = new vector<int>();

int end = total;
for (int i = 0; i < total; i++) {
    vector<int>::iterator iter = input.begin();
    int num = random()%end;
    iter = iter+num;
    output.push_back(*iter);
    input.erase(iter);
    end--;
}

return output;

}</pre>

 本文由用戶 bcf2 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!