SymPy | Permutation.unrank_nonlex() in Python
Permutation.unrank_nonlex() : unrank_nonlex() is a sympy Python library function which is a linear time unranking algorithm that does not respect lexicographic order.
Syntax : sympy.combinatorics.permutations.Permutation.unrank_nonlex()
Return : linear time unranking.
Code #1 : unrank_nonlex() Example
from sympy.combinatorics.partitions import Partition
from sympy.combinatorics.permutations import Permutation
a = Permutation([[ 2 , 0 ], [ 3 , 1 ]])
b = Permutation([ 1 , 3 , 5 , 4 , 2 , 0 ])
print ( "Permutation a - unrank_nonlex form : " , a.unrank_nonlex( 2 , 5 ))
print ( "Permutation b - unrank_nonlex form : " , b.unrank_nonlex( 1 , 6 ))
|
Output :
Permutation a – unrank_nonlex form : (1)
Permutation b – unrank_nonlex form : (0)
Code #2 : unrank_nonlex() Example
from sympy.combinatorics.partitions import Partition
from sympy.combinatorics.permutations import Permutation
a = Permutation([[ 2 , 4 , 0 ],
[ 3 , 1 , 2 ],
[ 1 , 5 , 6 ]])
print ( "Permutation a - unrank_nonlex form : " , a.unrank_nonlex( 2 , 8 ))
|
Output :
Permutation a – unrank_nonlex form : (0 1)
Last Updated :
27 Aug, 2019
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...