Last chance! 50% off unlimited learning
Sale ends in
numperm
implicitly numbers all permutations of length olength
, returning the permnum
th of these.
numperm(olength, permnum)
The number of items to permute
The number of the permutation to use (in 1:olength!
)
A permutation vector
The n! permutations on n items can be deterministically ordered via a factorization process in which there are n slots for the first element, n-1 for the second, and n-i for the ith. This fact is quite handy if you want to visit each permutation in turn, or if you wish to sample without replacement from the set of permutations on some number of elements: one just enumerates or samples from the integers on [1,n!], and then find the associated permutation. numperm
performs exactly this last operation, returning the permnum
th permutation on olength
items.
# NOT RUN {
#Draw a graph
g<-rgraph(5)
#Permute the rows and columns
p.1<-numperm(5,1)
p.2<-numperm(5,2)
p.3<-numperm(5,3)
g[p.1,p.1]
g[p.2,p.2]
g[p.3,p.3]
# }
Run the code above in your browser using DataLab