Knuth shuffle: Difference between revisions

m
Line 3,564:
<lang r>knuthShuffle<-function(items)
{
for(i in length(items):1) #for i from last downto 1 do:
{
j<-sample(0:i,1) #let j = random integer in range 0<=j<=i
items[c(i,j)]<-items[c(j,i)] #swap items[i] with items[j]
}
items
Line 3,574:
<lang r>knuthShuffle(15)
knuthShuffle("Alice")
knuthShuffle(c(42,19.9)) #Coerces 42 to 42.0
knuthShuffle(1:5)
knuthShuffle(array(c(1,2,3)))
knuthShuffle(matrix(1:16,nrow=4)) #A 4*4 matrix.
knuthShuffle(list("Alice","Bob",42,pi))
knuthShuffle(list("Alice","Bob",42,pi,c(3.14,exp(1)),c("I'm","a ragged","array","!"))) #Output is a list of length 5.</lang>
 
=={{header|Racket}}==
331

edits