31 lines
667 B
Plaintext
31 lines
667 B
Plaintext
T S_of_n_creator
|
||
Int n
|
||
i = 0
|
||
[Int] sample
|
||
|
||
F (n)
|
||
.n = n
|
||
|
||
F ()(item)
|
||
.i++
|
||
I .i <= .n
|
||
.sample.append(item)
|
||
E I random:(.i) < .n
|
||
.sample[random:(.n)] = item
|
||
|
||
V binarr = [0] * 10
|
||
V items = Array(0..9)
|
||
print(‘Single run samples for n = 3:’)
|
||
V s_of_n = S_of_n_creator(3)
|
||
L(item) items
|
||
s_of_n(item)
|
||
print(‘ Item: #. -> sample: #.’.format(item, s_of_n.sample))
|
||
|
||
L 100000
|
||
s_of_n = S_of_n_creator(3)
|
||
L(item) items
|
||
s_of_n(item)
|
||
L(s) s_of_n.sample
|
||
binarr[s]++
|
||
print("\nTest item frequencies for 100000 runs:\n "(enumerate(binarr).map((i, x) -> ‘#.:#.’.format(i, x)).join("\n ")))
|