题解 | #字符串排序#

字符串排序

https://www.nowcoder.com/practice/5190a1db6f4f4ddb92fd9c365c944584

str_in = input()
str_alpha = []          #存储英文字符
str_nonalpha = []       #存储非英文字符及索引
for i in range(len(str_in)):
    if str_in[i].isalpha():
        str_alpha.append(str_in[i])
    else:
        str_nonalpha.append((str_in[i],i))

#对英文字符列表排序,按照英文字母顺序排序,忽略大小写
def f(letter:str)->str:
    return letter.lower()
str_alpha = sorted(str_alpha,key=f)

#将非英文字符插入原来的位置
for i in str_nonalpha:
    str_alpha.insert(i[1],i[0])

print(''.join(str_alpha))

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务