题解 | #替换空格#
替换空格
https://www.nowcoder.com/practice/0e26e5551f2b489b9f58bc83aa4b6c68
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @return string字符串
*/
string replaceSpace(string s) {
if(s.length() == 0) return s;
int originalLength = 0;
int numberOfBlank = 0;
for(int i = 0;i<s.length();i ++){
originalLength ++;
if(s[i] == ' '){
numberOfBlank ++;
}
}
for(int i = 0;i < 2 * numberOfBlank;i ++){
s.push_back(' ');
}
int newLength = originalLength + 2 * numberOfBlank;
int p1 = originalLength -1;
int p2 = newLength - 1;
while(p1 >= 0){
if(s[p1] == ' '){
p1 --;
s[p2 --] = '0';
s[p2 --] = '2';
s[p2 --] = '%';
}
else{
s[p2 --] = s[p1 --];
}
}
return s;
}
};
特殊输入样例:""," "。
