RosettaCodeData/Task/Knuth-shuffle/Groovy/knuth-shuffle-1.groovy
Ingy döt Net db842d013d A-M baby
2013-04-10 21:29:02 -07:00

10 lines
230 B
Groovy

def shuffle = { list ->
if (list == null || list.empty) return list
def r = new Random()
def n = list.size()
(n..1).each { i ->
def j = r.nextInt(i)
list[[i-1, j]] = list[[j, i-1]]
}
list
}