PetscDTPermIndex#
Encode a permutation of n into an integer in [0, n!). This inverts PetscDTEnumPerm().
Input Parameters#
n - a non-negative integer (see note about limits below)
perm - the permuted list of the integers [0, …, n-1]
Output Parameters#
k - an integer in [0, n!)
isOdd - if not
NULL, returns whether the permutation used an even or odd number of swaps.
Note#
Limited to n such that n! can be represented by PetscInt, which is 12 if PetscInt is a signed 32-bit integer and 20 if PetscInt is a signed 64-bit integer.
See Also#
PetscDTFactorial(), PetscDTFactorialInt(), PetscDTBinomial(), PetscDTBinomialInt(), PetscDTEnumPerm()
Level#
beginner
Location#
Index of all DT routines
Table of Contents for all manual pages
Index of all manual pages