class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param s string字符串 
     * @return string字符串
     */
    string replaceSpace(string s) {
        for (int i=0; i<s.length(); i++){
            if (s[i]==' '){
                return s.substr(0,i)+"%20"+replaceSpace(s.substr(i+1));
            }
        }
        return s;
    }
};

一开始想的是遍历字符串将每个字符存贮在list最后连接起来,但是运用递归,代码更加简洁,更重要的是字符串相接的次数也更少。