1. 程式人生 > >劍指offer_第2題_替換空格

劍指offer_第2題_替換空格

題目描述

請實現一個函式:

  • 將一個字串中的每個空格替換成“%20”。

例如,當字串為We Are Happy.則經過替換之後的字串為We%20Are%20Happy。

理解

  • 如何對字串進行替換操作
    先看看字串中有哪些常用方法

    觀察到s.replace(old,new)可以對字串進行替換,所以自然想到了我們的解題思路1

解題思路

思路1

class Solution:
    # s 源字串
    def replaceSpace(self, s):
        return s.replace(" ","%20")

思路2
如果不用方法呢?可以嘗試遍歷替換

方法1

class Solution:
    # s 源字串
    def replaceSpace(self, s):
        s_new=""
        for i in s:
            if i==" ":
                i="%20"
            s_new+=i
        return s_new

方法2

class Solution:
    # s 源字串
    def replaceSpace(self, s):
        s = list(s)
        for i in range(len(s)):
            if s[i]==" ":
                s[i]="%20"
        return "".join(s)

思路3
如果不新建列表或者空字串怎麼解決呢?畢竟重新分配空間是一種浪費