# std::experimental::shuffle

< cpp‎ | experimental

定义于头文件 `<experimental/algorithm>` |  |
template< class RandomIt> void shuffle( RandomIt first, RandomIt last); |  | (库基础 TS v2)

重排序给定范围 `[first, last)` 中的元素，使得这些元素的每个可能排列拥有相等的出现概率，以逐线程引擎为随机数生成器。

### 参数

first, last | - | 要打乱的元素范围
- `RandomIt` 必须满足值可交换 (ValueSwappable) 和 老式随机访问迭代器 (LegacyRandomAccessIterator) 的要求。

### 返回值

（无）

### 复杂度

与 `first` 和 `last` 间的距离成线性。

### 示例

| 本节未完成 原因：暂无示例

### 参阅

random_shuffle shuffle (C++17 前)(C++11) | 随机重排范围中的元素 (函数模板)