一、题目描述
题目来自剑指Offer 05,难度简单。
请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
示例 1 :
输入:s = "We are happy."
输出:"We%20are%20happy."
限制:
0 <= s 的长度 <= 10000
二、题目解析
遍历数组:
- 先定义一个列表res。
- 用for循环遍历字符串s,当前字符为i,若i为空格" “,则res.append(”%20");否则,说明不是空格,直接将当前字符拼接在列表后即可,res.append(i)。
- 最后将列表res转化为字符串返回即可。
除了定义一个列表来存储结果,最后再转化为字符串返回,还可以在一开始就定义一个字符串来存储结果,最后直接返回即可。
三、参考代码
class Solution:
def replaceSpace(self, s: str) -> str:
# 定义一个列表用来存储结果
res = []
# 遍历循环字符串s
# 当 i 是空格的时候,res拼接“%20”
# 当 i 非空格时,res拼接当前字符i
for i in s:
if i == ' ':
res.append("%20")
else:
res.append(i)
# 将列表转化为字符串返回
return "".join(res)
class Solution:
def replaceSpace(self, s: str) -> str:
# 定义一个字符串用来存储结果
res = ""
# 遍历循环字符串s
# 当 i 是空格的时候,res拼接“%20”
# 当 i 非空格时,res拼接当前字符i
for i in s:
if i == ' ':
res = res+"%20"
else:
res = res+i
# 返回字符串结果res
return res