题目
请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
思路
最简单的就是利用C++的replace函数,遇到一个空格替换一下。
第二种思路就是先遍历一遍,count空格数量,count*2就是需要后移的格数,从后往前遍历,放到相应的位置。如果用此方法,不能用string,只能用char数组才可以
代码
- replace
string replaceSpace(string s) {
string s2="%20";
for(int i=0;i<s.length();i++){
if(s[i]==' '){
s.replace(i,1,s2);
}
}
return s;
}
- 从后往前替换