从今天起,记录刷LeetCode和剑指Offer 的代码,偶尔刷,以后有时间才去优化代码
05 替换空格
问题:
请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
示例 1:
输入:s = "We are happy."
输出:"We%20are%20happy."
限制:
0 <= s 的长度 <= 10000
作者:Krahets
链接:https://leetcode-cn.com/leetbook/read/illustration-of-algorithm/50ywkd/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
2021/1/27提交
class Solution {
public:
string replaceSpace(string s) {
//int blankNums=0;
for(unsigned int i=0;i<s.size();++i)
{
if(s[i]==' ')
{
s.replace(i,1,"%20");
}
}
return s;
}
};
提交结果:
此处用到了标准库string中的replace函数的其中一个重载用法
basic_string& replace( size_type pos, size_type count,
const basic_string& str );
pos - 将被替换的子串起始位置
count - 将被替换的子串长度
str - 用于替换的 string
string中replace的用法详见:https://zh.cppreference.com/w/cpp/string/basic_string/replace