← 返回题库
中级

基数排序

未完成
中级参考 代码结构已给出,请填写 ____ 处
def radix_sort(____):
    if not arr:
        return arr
    max_val = max(____)
    exp = ____
    while max_val // exp > ____:
        arr = counting_sort_by_digit(____)
        exp *= ____
    return arr

def counting_sort_by_digit(____):
    n = len(____)
    output = [____] * n
    count = [____] * ____
    for x in arr:
        digit = (____) % ____
        count[digit] += ____
    for i in range(____, ____):
        count[i] += count[i - ____]
    for i in range(____):
        digit = (____) % ____
        output[count[digit] - ____] = arr[i]
        count[digit] -= ____
    return output

示例

输入
print(radix_sort([170, 45, 75, 90, 802, 24, 2, 66]))
期望输出
[2, 24, 45, 66, 75, 90, 170, 802]
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码