RosettaCodeData/Task/Knuth-shuffle/Zkl/knuth-shuffle.zkl
2017-09-25 22:28:19 +02:00

7 lines
186 B
Text

fcn kshuffle(xs){foreach i in ([xs.len()-1..1,-1]){
xs.swap(i,(0).random(0,i+1))}
xs
}
fcn kshufflep(xs){[xs.len()-1..1,-1].pump(Void,'wrap(i){
xs.swap(i,(0).random(0,i+1))})
}