题解 | 字符串排序

字符串排序

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

s = input()
list1 = []    # 所有字母以及初始输入位置的列表
list2 = list(s)    # 将初始字符串转化为列表
index = 0

for i in s:    # 获得所有字母以及初始输入位置的列表
    if i.isalpha():
        list1.append((i, index))
        index += 1

# 用sort()排序;lambda x是匿名函数,规则为元组比较规则;lower()是大写字母变小写
list1.sort(key = lambda x : (x[0].lower(), x[1]))

index = 0
for i in range(len(s)):    # 将初始字符串字母替换为排序后的
    if list2[i].isalpha():
        list2[i] = list1[index][0]
        index += 1
print(''.join(list2))

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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