替換空格 劍指Offer 05 替換空格

2021-10-12 21:44:46 字數 905 閱讀 9982

請實現乙個函式,把字串 s 中的每個空格替換成"%20"
在python語言中,字串被設計成不可變型別,即無法直接修改字串的某一位字元,需要新建乙個字串實現。

初始化乙個list;遍歷字串s中每個字元c,若c為空格,則在list中新增"%20";若c不為空格,則在list中新增字元c。時間複雜度:o(n),遍歷o(n),每輪新增o(1)。空間複雜度:o(n),新建list使用線性大小空間。

class solution:

def replacespace(self, s: str) -> str:

res =

for c in s:

if c == ' ':

else:

return "".join(res)

使用python字串中的replace方法:str.replace(old, new[, max]),將字串中的 str1 替換成 str2,如果 max 指定,則替換不超過 max 次。時間複雜度:o(n)空間複雜度:o(n)
class solution:

def replacespace(self, s: str) -> str:

return s.replace(" ", "%20");

劍指 Offer 05 替換空格

劍指 offer 05.替換空格 請實現乙個函式,把字串 s 中的每個空格替換成 20 示例 1 方法一 遍歷新增 由於每次替換從 1 個字元變成 3 個字元,使用字元陣列可方便地進行替換。建立字元陣列地長度為 s 的長度的 3 倍,這樣可保證字元陣列可以容納所有替換後的字元。class solut...

劍指 Offer 05 替換空格

請實現乙個函式,把字串 s 中的每個空格替換成 20 示例 1 限制 0 s 的長度 10000 我的解答 class solution 這道題還是很簡單的,使用replace或者遍歷整個字串,每到空格就新增 20即可。不過在做完後發現,replace和replaceall方法具有差別,replac...

劍指Offer 05 替換空格

請實現乙個函式,把字串 s 中的每個空格替換成 20 示例 1 思路 因為string 的不可性,每一次在 res 後面新增字元,都要重新開闢空間 複製之前的值,再在末尾新增,所以效率很低,如下 改進 利用 stringbuffer stringbuilder 的特性,底層會申請乙個預設 16 位元...