zoukankan      html  css  js  c++  java
  • 字符串替换空格替换为%20

    题目

    原文:

    Write a method to replace all spaces in a string with ‘%20’.

    译文:

    写一个函数,把字符串中所有的空格替换为%20 。

    解答

    简单题。先遍历一次字符串,得到空格个数,进而得到将空格转换成%20后的串长度 (每个空格替换为%20需要增加2个字符,x个空格增加2x个字符)。 然后从后向前依次对空格进行替换,非空格原样拷贝。如果原串有足够大的空间, 则替换过程直接在原串上进行, 因为从后向前替换的过程中,新串用到的空间一定是旧串不需要的空间,看图示:

    旧字符串:i am hawstein
    旧串索引:   p
    新字符串:i%20am%20hawstein              
    新串索引:     q 

    如果原串的空间不够大,或是就直接是字符串长度加1(不要忘了''), 那么就新开一个串来保存替换后的结果。

    问题解决:

    rep1

    rep2

    rep3

    rep5

           程序源文件:   

    replace.cpp

  • 相关阅读:
    Flink-Record
    Linux Performance Observaibilty Tools
    DEC-UPDATE
    经济与选择(持续更新)
    GIS操作汇集(更新)
    JULY-Record-update
    GO (待更新)
    Python打包分发工具setuptools简介(转)
    HashMap源码分析
    nginx配置负载均衡
  • 原文地址:https://www.cnblogs.com/luosongchao/p/3247470.html
Copyright © 2011-2022 走看看