najidev / permutation
1.0.0
2014-06-20 11:00 UTC
Requires
- php: >=5.3.0
Requires (Dev)
- phpunit/phpunit: 4.*
This package is not auto-updated.
Last update: 2024-09-24 01:53:13 UTC
README
摘要
数学家们将排列定义为以下内容
"[...] 排列的概念与排列或重新排列集合成员以特定顺序或顺序(与组合不同,组合是忽略顺序的选择)有关。例如,集合 {1,2,3} 有六种排列,即 (1,2,3)、(1,3,2)、(2,1,3)、(2,3,1)、(3,1,2) 和 (3,2,1)。" [1]
此包提供了管理排列的工具 - 目前只提供了一个生成排列的工具。它被创建用来轻松构建具有排列的 phpunit-testcases。
PermutationIterator
PermutationIterator 的使用非常简单
$set = [1, 2, 3];
$iterator = new NajiDev\Permutation\PermutationIterator($set);
foreach ($iterator as $permutationOfSet) {
var_dump($permutationOfSet);
}
在每次迭代中,以下数组之一(仅一次)将被输出
- array(1, 2, 3)
- array(1, 3, 2)
- array(2, 1, 3)
- array(2, 3, 1)
- array(3, 1, 2)
- array(3, 2, 1)