剑指05.替换空格
请实现一个函数,把字符串
s
中的每个空格替换成"%20"。
在C++中,字符串是由字符数组构成的,因此无法直接用"=="比较字符串是否相等。另外,要替换字符串中的空格为"%20",需要对原字符串进行修改,而不是创建一个新的字符串。以下是修改后的代码:
class Solution {
public:
string replaceSpace(string s) {
int len = s.length();
for(int i = 0; i < len; i++){
if(s[i] == ' '){
s[i] = '%';
s.insert(i + 1, "20");
len += 2;
i += 2; // 更新索引i,跳过插入的"%20"部分
}
}
return s;
}
};