题目:
请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
示例:
输入:s = "We are happy."输出:"We%20are%20happy."
思路:
简单题,先遍历字符串获取空格的数量,记为n,然后创建新字符串,大小为s.size()+2*n。
再遍历原字符串,根据规则填充到新字符串里面。
代码:
class Solution {public: string replaceSpace(string s) { int n=0; for(auto& c: s) { if(c==' ') n++; } int length = s.size()+2*n; string rs(length, ' '); int i=0; for(auto& c: s) { if(c!=' ') rs[i++]=c; else { rs[i++]='%'; rs[i++]='2'; rs[i++]='0'; } } return rs; }};