Data update
This commit is contained in:
parent
4bb20c9b71
commit
cbaf4c4b64
12390 changed files with 318560 additions and 27248 deletions
24
Task/Knuths-algorithm-S/Crystal/knuths-algorithm-s.cr
Normal file
24
Task/Knuths-algorithm-S/Crystal/knuths-algorithm-s.cr
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
def s_or_n_creator (n, t : T.class) forall T
|
||||
arr = Array(T).new(n)
|
||||
i = 0
|
||||
->(item : T) {
|
||||
i += 1
|
||||
if i <= n
|
||||
arr << item
|
||||
elsif rand(i) < n
|
||||
arr[rand(n)] = item
|
||||
end
|
||||
arr
|
||||
}
|
||||
end
|
||||
|
||||
buckets = Array.new(10, 0)
|
||||
100_000.times do
|
||||
s_or_n = s_or_n_creator 3, Int32
|
||||
(0...9).each do |i|
|
||||
s_or_n.call i
|
||||
end
|
||||
s_or_n.call(9).each do |i| buckets[i] += 1 end
|
||||
end
|
||||
|
||||
puts buckets
|
||||
Loading…
Add table
Add a link
Reference in a new issue