def linear_counting_sort(arr, range_start, range_end):
count = [0] * (range_end - range_start + 1)
for i in arr:
count[i - range_start] += 1
index = 0
for i in range(range_start, range_end + 1):
while count[i - range_start] > 0:
arr[index] = i
index += 1
count[i - range_start] -= 1
return arr