Sorting algorithms/Radix sort: Difference between revisions
Content added Content deleted
Line 959: | Line 959: | ||
# |
# |
||
func sort . data[] . |
func sort . data[] . |
||
radix = |
radix = 10 |
||
for d in data[] |
|||
⚫ | |||
for di range len data[] |
|||
if data[di] > max |
|||
⚫ | |||
. |
|||
. |
. |
||
len buck[][] radix |
len buck[][] radix |
||
Line 970: | Line 967: | ||
while pos <= max |
while pos <= max |
||
for i range radix |
for i range radix |
||
buck[i][] = [ ] |
|||
. |
. |
||
for |
for d in data[] |
||
h = |
h = d / pos mod radix |
||
buck[h][] &= |
buck[h][] &= d |
||
. |
. |
||
di = 0 |
di = 0 |
||
for i range radix |
for i range radix |
||
for |
for d in buck[i][] |
||
data[di] = |
data[di] = d |
||
di += 1 |
di += 1 |
||
. |
. |