解法1,暴力法,使用c++的string内的函数,发现就替换:

    1. class Solution {
    2. public:
    3. string replaceSpace(string s) {
    4. string ss = "%20";
    5. for (int i = 0;i < s.size();++i) {
    6. if (s[i] == ' ') {
    7. s.replace(i, 1, "%20");
    8. }
    9. }
    10. return s;
    11. }
    12. };

    leedcode测试通过:

    1. 执行用时:0 ms, 在所有 C++ 提交中击败了100.00% 的用户
    2. 内存消耗:6.1 MB, 在所有 C++ 提交中击败了35.76% 的用户

    解法2,遍历一遍字符串,统计出空格个数。然后,移动字符串,移动的位置根据空格数已经固定了。