Function permutator::get_permutation_for
source · [−]Expand description
Get permutation at specific location.
If objects
is [1, 2, 3, 4] and degree
is 2 then
all possible permutation will be [1, 2], [1, 3],
[1, 4], [2, 1], [2, 3], [2, 4], [3, 1], [3, 2],
[3, 4], [4, 1], [4, 2], [4, 3].
Parameters
objects
a set of data that is a based for permutation.degree
number of element per each location.x
is a location to get a permutation
Examples
use permutator::get_permutation_for;
let nums = [1, 2, 3, 4];
get_permutation_for(&nums, 2, 0); // return Result([1, 2])
get_permutation_for(&nums, 3, 0); // return Result([1, 2, 3])
get_permutation_for(&nums, 2, 5); // return Result([2, 4])
get_permutation_for(&nums, 2, 11); // return Result([4, 3])
get_permutation_for(&nums, 2, 12); // return Err("parameter x is outside a possible length")
get_permutation_for(&nums, 5, 0); // return Err("Insufficient number of object in parameters objects for given parameter degree")