c++

如何正确使用C++中的shuffle

小樊
113
2024-07-13 04:47:20
栏目: 编程语言

在C++中,可以使用标准库中的shuffle函数来打乱一个序列的元素顺序。下面是正确使用shuffle函数的示例代码:

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

int main() {
    std::vector<int> nums = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

    // 使用随机数引擎来生成随机数
    std::random_device rd;
    std::mt19937 g(rd());

    // 调用shuffle函数来打乱nums中的元素顺序
    std::shuffle(nums.begin(), nums.end(), g);

    // 打印打乱后的序列
    for (int num : nums) {
        std::cout << num << " ";
    }
    std::cout << std::endl;

    return 0;
}

在上面的示例代码中,首先创建了一个包含数字1到10的vector。然后使用std::random_device来获取真正随机的种子,并将其传递给std::mt19937引擎。最后,调用std::shuffle函数来打乱vector中的元素顺序。

通过正确使用shuffle函数,可以确保生成的随机序列是真正随机的,并且符合预期的打乱效果。

0
看了该问题的人还看了