剑指 Offer 05. 替换空格
请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
s
class Solution { public: string replaceSpace(string s) { int len = s.size(); int count = 0; //统计空格数量 for (char& c : s) { if (c == ' ') count++; } //定义s_copy长度 int s_len = len + count * 2; std::string s_copy; s_copy.resize(s_len); //遍历修改 int i = len-1; int j = s_len-1; while (i>=0) { if (s[i] == ' ') { s_copy[j] = '0'; s_copy[j - 1] = '2'; s_copy[j - 2] = '%'; j = j - 3; } else { s_copy[j] = s[i]; j = j - 1; } i = i - 1; } return s_copy; } };
已经造好的轮子:
return s.replace(" ","%20");
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理