题解 | #替换空格(c++实现)#

替换空格

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

思路

这里利用了一个辅助的string容器,然后去寻找给定字符串中的空格,在找的过程中把不为空格的字符放到辅助的string容器中。找的空格后就把“%20”放到辅助容器中,最终返回辅助string容器。


代码实现

    string replaceSpace(string s) {
        int i = 0;
        string st; //辅助容器
        while(s[i]!='\0')
        {
            //寻找空格
          	if(s[i]!=' ')
            {   
              	//这里使用的是append(int n,char c)//在当前字符串结尾追加n个字符c
                st.append(1,s[i]); 
                i++;
                continue;
            }
         	//找到空格后追加字符串“%20”
            st.append("%20");
            i++;
        }
        return st;
 }

复杂度

这里时空复杂度应该都是O(N)。

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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