题解 | 字符串排序

def custom_sort_string(s):
    # 提取所有英文字母并排序,不区分大小写
    letters = sorted([c for c in s if c.isalpha()], key=lambda c: c.lower())
    
    # 按照输入顺序和排序后的顺序,将字母放回原来的位置
    result = []
    letter_index = 0
    for c in s:
        if c.isalpha():
            # 将当前字母替换为排序后的字母,并保持大小写
            result.append(letters[letter_index])
            letter_index += 1
        else:
            # 非字母字符保持原位置
            result.append(c)
    
    return ''.join(result)

# 输入字符串
input_str = input().strip()

# 输出结果
print(custom_sort_string(input_str))

全部评论

相关推荐

1jian10:48h没写面评会变成这样
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务