15 lines
425 B
Python
15 lines
425 B
Python
def counting_sort(array1, max_val):
|
|
m = max_val + 1
|
|
count = [0] * m
|
|
|
|
for a in array1:
|
|
# count occurences
|
|
count[a] += 1
|
|
i = 0
|
|
for a in range(m):
|
|
for c in range(count[a]):
|
|
array1[i] = a
|
|
i += 1
|
|
return array1
|
|
|
|
print(counting_sort( [1, 2, 7, 3, 2, 1, 4, 2, 3, 2, 1], 7 )) |