亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

C++中shuffle和隨機數

c++
小樊
92
2024-07-13 04:36:30
欄目: 編程語言

在C++中,可以使用std::shuffle函數來打亂一個序列中的元素順序。std::shuffle函數接受一個指向要打亂的序列的起始迭代器和一個指向序列末尾的迭代器,以及一個隨機數生成器作為參數。下面是一個示例代碼:

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

int main() {
    std::vector<int> vec = {1, 2, 3, 4, 5};

    // 打亂vec中的元素順序
    std::random_device rd;
    std::mt19937 g(rd());
    std::shuffle(vec.begin(), vec.end(), g);

    for (int i : vec) {
        std::cout << i << " ";
    }
    
    return 0;
}

在上面的示例中,我們先創建了一個包含1到5的整數的vector。然后使用std::random_device生成一個隨機種子,std::mt19937初始化一個隨機數生成器,最后使用std::shuffle函數打亂vector中的元素順序。

除了使用std::shuffle函數,我們還可以使用C++標準庫中的隨機數生成器來生成隨機數。例如,可以使用std::uniform_int_distribution來生成一個指定范圍內的隨機整數。下面是一個示例代碼:

#include <iostream>
#include <random>

int main() {
    std::random_device rd;
    std::mt19937 gen(rd());
    std::uniform_int_distribution<int> dis(1, 10);

    for (int i = 0; i < 10; ++i) {
        int rand_num = dis(gen);
        std::cout << rand_num << " ";
    }

    return 0;
}

在上面的示例中,我們使用std::uniform_int_distribution生成1到10之間的隨機整數,并使用std::mt19937作為隨機數生成器。在循環中生成10個隨機數并輸出到控制臺。

0
威信县| 南部县| 新营市| 甘孜| 龙门县| 吉安县| 北辰区| 永善县| 巴彦县| 资阳市| 章丘市| 滦南县| 安溪县| 全州县| 凤山市| 固原市| 财经| 杭锦旗| 偏关县| 阜阳市| 闽侯县| 宿迁市| 达拉特旗| 驻马店市| 南靖县| 军事| 大理市| 荆门市| 怀远县| 克什克腾旗| 嘉义县| 濮阳县| 台中县| 衡东县| 乐都县| 洛阳市| 高陵县| 上栗县| 四川省| 苗栗市| 威宁|