暴力解:
class Solution {
public:
string replaceSpace(string s) {
for(int i = 0; i < s.length(); i ++){
char ch = s[i];
if(ch == ' '){
s.append(" ");
for(int j = s.length(); j> i+2; j --){
s[j-1] = s[j - 3];
}
s[i] = '%';
s[i+1] = '2';
s[i + 2] = '0';
}
}
return s;
}
};
时间复杂度o(n^2) 空间复杂度 o(1)
换一个思路
class Solution {
public:
string replaceSpace(string s) {
string str;
for(char &c : s){
if(c == ' '){
str.push_back('%');
str.push_back('2');
str.push_back('0');
}
else {
str.push_back(c);
}
}
return str;
}
};
时间复杂度o(n) ,空间复杂度 o(n)