C++如何随机打乱数组中的元素
时间: 2023-08-15 13:03:30 浏览: 363
数组随机打乱顺序方法
5星 · 资源好评率100%
在C++中,你可以使用`std::shuffle()`函数来随机打乱数组中的元素。首先,包含 `<algorithm>` 和 `<random>` 头文件,然后使用以下代码来实现:
```cpp
#include <iostream>
#include <algorithm>
#include <random>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
// 使用默认的随机设备引擎
std::random_device rd;
std::mt19937 g(rd());
// 使用 shuffle 函数随机打乱数组元素
std::shuffle(arr, arr + size, g);
// 输出打乱后的数组元素
for (int i = 0; i < size; i++) {
std::cout << arr[i] << " ";
}
return 0;
}
```
这段代码会将数组 `arr` 中的元素随机打乱,并输出结果。注意,使用 `std::shuffle()` 需要提供一个随机数生成器引擎作为参数,这里使用了 Mersenne Twister 引擎 `std::mt19937`。
阅读全文