diff --git a/sorting/radix_sort.py b/sorting/radix_sort.py new file mode 100644 index 0000000..8f3c4fa --- /dev/null +++ b/sorting/radix_sort.py @@ -0,0 +1,14 @@ +def radix_sort(lista): + max_len = max([len(numero) for numero in lista]) + padded = list([str(num).rjust(max_len, "0") for num in lista]) + + for pos in reversed(range(max_len)): + buckets = [list() for x in range(0, 10)] + for num in padded: + bucket = int(num[pos]) + buckets[bucket] += [num] + padded = sum(buckets, []) + return padded + +if __name__ == "__main__": + print(radix_sort(["13", "105", "10", "150"]))