(python版)《劍指Offer》JZ02:替換空格
阿新 • • 發佈:2020-12-24
技術標籤:劍指Offer-pythonpythonleetcode演算法字串
【思路1】replace函式
class Solution:
def replaceSpace(self, s: str) -> str:
return s.replace(' ','%20')
【思路2】遍歷新增
演算法流程:
- 初始化一個 list (Python) / StringBuilder (Java) ,記為 res ;
- 遍歷列表 s 中的每個字元 c :
- 當 c 為空格時:向 res 後新增字串 “%20” ;
- 當 c 不為空格時:向 res 後新增字元 c ;
- 將列表 res 轉化為字串並返回。
class Solution:
def replaceSpace(self, s: str) -> str:
res=[]
for c in s:
if c==' ':
res.append('%20')
else:
res.append(c)
return "".join(res)
- 時間複雜度 O(N) : 遍歷使用 O(N) ,每輪新增(修改)字元操作使用 O(1) ;
- 空間複雜度 O(N) :