Another update from ingydotnet^djgoku

This commit is contained in:
Ingy döt Net 2015-11-18 06:14:39 +00:00
parent 91df62d461
commit 948b86eafa
7604 changed files with 108452 additions and 22726 deletions

View file

@ -0,0 +1,33 @@
function countsort{T<:Integer}(a::Array{T,1})
(lo, hi) = extrema(a)
b = zeros(T, length(a))
cnt = zeros(Int, hi - lo + 1)
for i in a
cnt[i - lo + 1] += 1
end
z = one(Int)
for i in lo:hi
while cnt[i - lo + 1] > 0
b[z] = i
z += 1
cnt[i - lo + 1] -= 1
end
end
return b
end
a = Uint8[rand(1:typemax(Uint8)) for i in 1:20]
println("Sort of Unsigned Bytes:")
println(" Before Sort:")
println(" ", a)
a = countsort(a)
println("\n After Sort:")
println(" ", a, "\n")
a = [rand(1:2^10) for i in 1:20]
println("Sort of Integers:")
println(" Before Sort:")
println(" ", a)
a = countsort(a)
println("\n After Sort:")
println(" ", a)