2个不稳定版本
0.2.1 | 2022年6月5日 |
---|---|
0.1.0 | 2019年8月7日 |
#876 在 算法
1,080 每月下载量
11KB
130 行
permute
以内存高效和确定性方式生成切片的排列,使用Heap算法。
例如,打印序列["red", "green", "blue"]的所有排列
use permute::permutations_of;
for permutation in permutations_of(&["red", "green", "blue"]) {
for element in permutation {
print!("{}, ", element);
}
println!("");
}
基于Heap算法提供的排序,本程序将保证产生
red, green, blue,
green, red, blue,
blue, red, green,
red, blue, green,
green, blue, red,
blue, green, red,
此crate还提供了ArbitraryTandemControlIter
,它允许使用索引切片迭代切片——这就是在这里实现Heap算法的方式。