给定表示置换原子的N个元素的数组,是否有类似的算法:
function getNthPermutation( $atoms, $permutation_index, $size )
Run Code Online (Sandbox Code Playgroud)
其中$atoms是元素数组,$permutation_index是置换的索引,是置换$size的大小.
例如:
$atoms = array( 'A', 'B', 'C' );
// getting third permutation of 2 elements
$perm = getNthPermutation( $atoms, 3, 2 );
echo implode( ', ', $perm )."\n";
Run Code Online (Sandbox Code Playgroud)
会打印:
B, A
Run Code Online (Sandbox Code Playgroud)
没有计算每个排列直到$ permutation_index?
我听说过关于事实排列的一些事情,但我发现的每一个实现都会给出一个具有相同V大小的排列,这不是我的情况.
谢谢.