2个不稳定版本
0.2.0 | 2020年4月1日 |
---|---|
0.1.0 | 2020年3月30日 |
#10 in #rotate
4KB
stl_rotate
Rust中C++ stl::rotate的实现(使用范围代替first, .., last)。
通过范围从向量中选择元素,并旋转选定的元素,使得所选索引成为该范围中的第一个索引,所有先前元素被推回到范围的末尾。
示例
// [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
let mut v: Vec<usize> = (0..10).collect();
// Rotate all elements with indices 0 to 9 such that index 5 becomes first element:
v.rotate(0..10, 5);
// [5, 6, 7, 8, 9, 0, 1, 2, 3, 4]
assert!(v == [5, 6, 7, 8, 9, 0, 1, 2, 3, 4]);