《剑指offer》5:替换空格

一.题目描述

请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

二.题目解析

如果使用python的内置函数replace,则可以在几秒钟内求解,但我们这里不适用repalce函数,在实际的面试当中遇到这样的题目用python求解也是会被禁止使用replace函数的。我们可以使用一个简单思路求解,首先创建一个列表,把遇到的字符都拿到这个列表里,以逗号进行分割,遇到空格则给列表里添加“%20”即可。因此代码如下:

# -*- coding:utf-8 -*-
class Solution:
    # s 源字符串
    def replaceSpace(self, s):
        # write code here
        #我认为这个可以使用队列来解答这个问题
        ls=[]
        for i in s:
            if i==' ':
                ls.append("%20")
            else:
                ls.append(i)
        str=''        
        for i in ls:
            str=str+i
        return str

只需要20ms即可得解。

原文地址:https://www.cnblogs.com/geeksongs/p/13457191.html