剑指 Offer 05. 替换空格

题目 剑指 Offer 05. 替换空格

请实现一个函数,把字符串 s 中的每个空格替换成"%20"。

示例 1:
输入:s = "We are happy."
输出:"We%20are%20happy."

思路

双指针,类似于27. 移除元素这道题
注意:字符串是不可变类型,不能直接在源字符串上修改,必须开辟一个新的空字符串存放结果。

代码

class Solution:
    def replaceSpace(self, s: str) -> str:
        slow = 0
        fast = 0
        res = ""
        while fast < len(s):
            if s[fast] != " ":
                # s[slow] += s[fast]  # 字符串是不可变类型,不能直接修改字符串的值
                res += s[fast]  
                slow += 1
                fast += 1
            else:
                # s[slow] = "%20"
                res += "%20"
                fast += 1
                slow += 1
        return res
posted @ 2022-09-06 21:09  时光如你般美好  阅读(15)  评论(0编辑  收藏  举报