美文网首页
917. 仅仅反转字母

917. 仅仅反转字母

作者: 好吃红薯 | 来源:发表于2019-05-13 22:21 被阅读0次

    给定一个字符串 S,返回 “反转后的” 字符串,其中不是字母的字符都保留在原地,而所有字母的位置发生反转。

    示例 1:

    输入:"ab-cd"
    输出:"dc-ba"
    示例 2:

    输入:"a-bC-dEf-ghIj"
    输出:"j-Ih-gfE-dCba"
    示例 3:

    输入:"Test1ng-Leet=code-Q!"
    输出:"Qedo1ct-eeLg=ntse-T!"

    提示:

    S.length <= 100
    33 <= S[i].ASCIIcode <= 122
    S 中不包含 \ or "

    class Solution:
        def reverseOnlyLetters(self, S: str) -> str:
            # .isalpha()
            
            a = []    #记录字母
            b={}      #记录非字母的位置以及符号
            
            for i,c in enumerate(S):
                if c.isalpha():
                    a.append(c)
                else:
                    b[i] = c
                    
            a.reverse()
            for i,c in b.items():
                a.insert(i,c)
                
            return ''.join(a)
                
    

    相关文章

      网友评论

          本文标题:917. 仅仅反转字母

          本文链接:https://www.haomeiwen.com/subject/nmsdaqtx.html