Functions to validate permutations
Functions to validate permutation objects: if valid, return TRUE
and if not valid, generate a warning()
and return FALSE
.
Function singleword.valid()
takes an integer vector, interpreted
as a word, and checks that it is a permutation of
seq_len(max(x))
.
Function cycle.valid()
takes a cyclist and checks for disjoint
cycles of strictly positive integers with no repeats.
singleword_valid(w) cyclist_valid(x)
x |
In function |
w |
In function |
Returns either TRUE
, or stops with an informative error message
Robin K. S. Hankin
singleword_valid(sample(1:9)) # TRUE singleword_valid(c(3L,4L,2L,1L)) # TRUE singleword_valid(c(3,4,2,1)) # FALSE (not integer) singleword_valid(c(3L,3L,2L,1L)) # FALSE (3 repeated) cyclist_valid(list(c(1,8,2),c(3,6))) # TRUE cyclist_valid(list(c(1,8,2),c(3,6))) # FALSE ('8' is repeated) cyclist_valid(list(c(1,8,1),c(3,6))) # FALSE ('1' is repeated) cyclist_valid(list(c(0,8,2),c(3,6))) # FALSE (zero element)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.