题解 | #替换空格#

替换空格

http://www.nowcoder.com/practice/0e26e5551f2b489b9f58bc83aa4b6c68

//思路,用string自带的一些函数

public:

string replaceSpace(string s) {
    int i=0;
    string s1=s;
    while(i<s.size())   //如果遇到空格,s的size就变化
    {
        
        if(s[i]==' ')
        {
            s1.resize(s.size()+2);        //resize()重新分配空间  每遇到一个空格就多2
            s1=s.substr(0,i)+"%20"+s.substr(i+1);   //把空格前后的子字符串与转换后的%20拼接
            s=s1;                         //新的s
            i+=3;                  //例 We Are   i=2遇到空格,转换后 We%20Are  ,下一次从i+3也就是字符A开始搜索
        }
        else    //没遇到空格就++搜索
        {
            ++i;
        }
        
        
    }
    return s;
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
今天 14:08
点赞 评论 收藏
分享
06-07 19:59
门头沟学院 C++
补药卡我啊😭:都快15年前的了还在11新特性
你的简历改到第几版了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务