Anonymous user
Sorting algorithms/Sleep sort: Difference between revisions
no edit summary
No edit summary |
No edit summary |
||
Line 359:
main :: IO ()
main = getArgs >>= sleepSort . map read</lang>
=={{header|Icon}} and {{header|Unicon}}==
The following solution only works in Unicon.
<lang unicon>global t
procedure main(A)
t := set()
every insert(t,mkThread(!A))
every spawn(!t) # start threads as closely grouped as possible
while (*t > 0) do write(<<@)
end
procedure mkThread(n) # 10ms delay scale factor
return create (delay(n*10),delete(t,¤t),n@>&main)
end</lang>
Sample run:
<pre>
->ss 3 1 4 1 5 9 2 6
1
1
2
3
4
5
6
9
->
</pre>
=={{header|Java}}==
|