22 lines
354 B
CoffeeScript
22 lines
354 B
CoffeeScript
knuth_shuffle = (a) ->
|
|
n = a.length
|
|
while n > 1
|
|
r = Math.floor(n * Math.random())
|
|
n -= 1
|
|
[a[n], a[r]] = [a[r], a[n]]
|
|
a
|
|
|
|
counts =
|
|
"1,2,3": 0
|
|
"1,3,2": 0
|
|
"2,1,3": 0
|
|
"2,3,1": 0
|
|
"3,1,2": 0
|
|
"3,2,1": 0
|
|
|
|
for i in [1..100000]
|
|
counts[knuth_shuffle([ 1, 2, 3 ]).join(",")] += 1
|
|
|
|
for key, val of counts
|
|
console.log "#{key}: #{val}"
|