温馨提示×

C++ shuffle如何正确使用

c++
小樊
92
2024-07-13 09:33:22
栏目: 编程语言

在C++中使用shuffle函数需要包含头文件,并且在使用shuffle函数之前需要先使用随机数生成器对随机数种子进行初始化。

下面是一个正确使用shuffle函数的示例代码:

#include <iostream>
#include <algorithm>
#include <vector>
#include <random>

int main() {
    std::vector<int> vec = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    
    // 初始化随机数生成器
    std::random_device rd;
    std::mt19937 gen(rd());
    
    // 使用shuffle函数对vector进行随机排序
    std::shuffle(vec.begin(), vec.end(), gen);
    
    // 打印排序后的vector
    for (int num : vec) {
        std::cout << num << " ";
    }
    
    return 0;
}

在上面的示例中,我们首先使用random_device和mt19937类来初始化随机数生成器gen。然后使用shuffle函数对vec进行随机排序。最后打印排序后的vector。

需要注意的是,使用shuffle函数对vector进行随机排序时,需要传入一个随机数生成器作为参数,确保获得的随机序列是真正的随机的。

0