双指针 静态
class Solution{
public:
string replaceSpace(string s){
int len 0;
for(aoto c: s)
{
if(c = ' ') len+=3;
else len ++;
}//扩充长度
int i = s.size() - 1, j = len - 1; //从零开始
s.resize(len); //变化长度,但是存储元素还是之前的
while(i >= 0) //倒叙
{
if(s[i] == ' ')
{
s[j --] = '0';
s[j --] = '2';
s[j --] = '%';
}
else
{
s[j --] = s[i];
}
i--
}
return s;
}
};
C ++快速求解
class Solution{
public:
string replaceSpace(string s){
string res;
for(auto c: s)
{
if(c == ' ')
res += "%20";
else
res += c;
}
return res;
}
};