题目:

class Solution {
public:
    string replaceSpace(string s) {
        int numspace=0;
        for(int i=0;i<s.size();i++){
            if(s[i]==' '){
                numspace++;
            }
        }
        int oldsize=s.size();
        s.resize(oldsize + 2*numspace);                   //1.重塑字符串大小用s.resize()  2.每个空格多出2个位置而不是3个
        int newsize=s.size();
        for(int i=oldsize-1,j=newsize-1;i<j;i--,j--){     //1.i和j分别从oldsize和newsize的末尾开始
            if(s[i]!=' ')s[j]=s[i];
            else{
                s[j]='0';
                s[j-1]='2';
                s[j-2]='%';
                j-=2;
            }
        }
        return s;
    }
};
posted on 2023-07-18 20:38  孜孜不倦fly  阅读(19)  评论(0)    收藏  举报