使用python自帶的replace方法。
#-*- coding:utf-8 -*-
#-*- python3.6.6 -*-
#-*- jlutiger -*-
#-*- 替換空格 -*-
class
solution:
#s 源字串
defreplacespace(self, s):
#write code here
return s.replace("
","%20")
if__name__=="
__main__":
s="we are famliy
"answer =solution().replacespace(s)
print(answer)
對空格使用split,再使用「%20」連線。
classsolution:
#s 源字串
defreplacespace(self, s):
#write code here
return
'%20
'.join(s.split(''))
if__name__=="
__main__":
s="we are famliy
"answer =solution().replacespace(s)
print(answer)
由於替換空格後,字串長度需要增大。先掃瞄空格個數,計算字串應有的長度,從後向前乙個個字元複製(需要兩個指標)。這樣避免了替換空格後,需要移動的操作。
classsolution:
#s 源字串
defreplacespace(self, s):
#write code here
#計算有多少個空格
num_space =0
for i in
s:
if i == '':
num_space += 1
#新的字串的長度
new_length = len(s) + 2 *num_space
index_origin = len(s) - 1index_new = new_length - 1
#新的字串
new_string = [none for i in
range(new_length)]
#按照從後往前的順序將%20填入
while index_origin >= 0 & (index_new >index_origin):
if s[index_origin] == '':
new_string[index_new] = '0'
index_new -= 1new_string[index_new] = '2'
index_new -= 1new_string[index_new] = '%'
index_new -= 1
else
: new_string[index_new] =s[index_origin]
index_new -= 1index_origin -= 1
return
''.join(new_string)
if__name__=="
__main__":
s="we are famliy
"answer =solution().replacespace(s)
print(answer)
演算法題 替換空格
題目描述 請實現乙個函式,把字串 s 中的每個空格替換成 20 示例 1 限制 0 s 的長度 10000解答 因為是從乙個字元 空格 變成三個字元 20 所以申請乙個字元陣列,長度為字串長度的3倍。迴圈判斷字串中字元是否為空格,如果是將字元陣列中的size size 1 size 2三個位上分別賦...
jquery 替換空格
如果是用php替換所有的空格,可以直接這樣寫 srt str replace str 替換所有的空格.但自己有js這樣 str str.replace 寫替換空格的時候,打乙個空格可以替換,如果打兩個空格以上,就不可以了。js去除空格的方法目前共有12種 實現1 string.prototype.t...
O n 實現替換空格
題目 請實現乙個函式,把字串中的每個空格替換成 20 要求時間複雜度為o n 思路 我們從字串的後面開始複製和替換。首先準備兩個指標,p1和p2。p1指向原始字串的末尾,而p2指向替換之後的字串的末尾 如圖 a 所示 接下來我們向前移動指標p1,逐個把它指向的字元複製到p2指向的位置,直到碰到第乙個...