C++ 算法 random_shuffle() 函数
示例
随机排列向量的元素
vector<int> numbers = {1, 2, 3, 5, 7, 9};
random_shuffle(numbers.begin(), numbers.end());
for (int number : numbers) {
cout << number << " ";
}
自己试试 »
定义和用法
The random_shuffle()
函数随机排序数据范围内的元素。
数据范围由迭代器指定。
注意: 上面的示例可能总是以相同的方式排序元素。
为了改变随机排序,您可以使用 srand()
函数来播种随机数生成器。为了确保每次排序顺序都不同,您可以使用当前时间作为种子,如下面的“更多示例”部分所示。
语法
random_shuffle(iterator start, iterator end);
参数值
参数 | 描述 |
---|---|
start | 必需。指向数据范围开头的迭代器。 |
end | 必需。指向数据范围末尾的迭代器。元素将包含到该位置,但该位置的元素将不包含在内。 |
更多示例
示例
确保每次程序运行时向量都以不同的方式排序
vector<int> numbers = {1, 2, 3, 5, 7, 9};
srand(time(NULL));
random_shuffle(numbers.begin(), numbers.end());
for (int number : numbers) {
cout << number << " ";
}
自己试试 »
相关页面
在我们的 数据结构教程 中了解更多关于数据结构的信息。
在我们的 迭代器教程 中了解更多关于迭代器的信息。
在我们的 算法教程 中了解更多关于算法的信息。