替換字串中的空格

2021-10-09 10:07:05 字數 466 閱讀 5365

請實現乙個函式,把字串 s 中的每個空格替換成"%20"。

限制:0 <= s 的長度 <= 10000

解法一:split() + join()

解題思路

1.首先判斷輸入是否合法,是否為字串型別,字串長度不能太長。

2.再通過split(』 『)將空格隔開的單詞變為字串陣列中的陣列項

3.最後通過join(』%20』)將各個陣列項,也就是單詞,連線起來完成空格的替換。

function

replacespace

(s)return s;

}

解法二:replace() + 正規表示式

解題思路

使用正規表示式匹配空格,replace方法進行替換

function

replacespace

(s)

字串中的替換空格

題目 把字串中的每個空格替換成 20 思路 直觀的做法是從頭到尾掃瞄字串,遇到空格就做替換,然而由於將乙個字元替換成3個字元,我們必須將空格後面的所有字元都後移兩個位元組。這樣沒次遇到空格,都會移動字元。對於這種問題,當字串 或陣列 長度變大,從前往後操作時移動次數多時,可以考慮從後往前操作。ps ...

替換字串中的空格

這是乙個關於字串的題目,解決這個問題有如下方法。最直觀的方法,利用輔助空間,開始遍歷原字串,是空格則在輔助空間中用 20 字串替代,不是則直接複製到輔助空間中。此方法時間複雜度為o n 空間複雜度為o n 因為需要遍歷原字串,所以時間複雜度不能縮減。如果考慮空間複雜度為o 1 有一種從空間複雜度概念...

替換字串中的空格

替換字串中的空格的方法有很多,在這裡我們實現一種時間複雜度與空間複雜度都為o n 的方法,使用c 語言實現。例如字串talk is cheap show me the code,我們要將其替換為talk is cheap show me the code,並且列印到螢幕上。方 述 定義乙個字元型指標...