请实现一个函数,把字符串 s
中的每个空格替换成"%20"。
思路:
采用双指针
代码如下:
class Solution {
public:
string replaceSpace(string s) {
int count = 0; //计数
int sOldSize = s.size();
for(int i = 0; i < s.size(); i++)
{
if(s[i] == ' ')
{
count++;
}
}
s.resize(s.size() + count * 2); //重新改变大小
int sNewSize = s.size();
for(int i = sNewSize - 1, j = sOldSize - 1; j < i; i--,j--)
{
if(s[j] != ' ')
{
s[i] = s[j];
}
else
{
s[i] = '0';
s[i - 1] = '2';
s[i - 2] = '%';
i = i - 2;
}
}
return s;
}
};