• 2、替换空格


    题目描述

    请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
     
    思路:第一遍遍历得到空格数,可以计算得到新字符串的长度。第二遍用两个index,一个指向旧字符串的末尾,另一个指向新字符串的末尾。碰到空格就是使用%20替换。
     
    func replaceSpace(str []byte, length int) {
        count := 0
        // 遍历一遍字符串, 统计字符出现的数目, 计算替换后的字符串长度
        for i:=0; i<length; i++ {
            if str[i] == ' '{
                count++
            }
        }
        newlength := length + count*2
    
        // 两个index,一个指向length-1, 另一个指向newlength-1,遍历一遍字符串,完成替换
        for l,nl := length-1,newlength-1; l>=0 && nl>=0; {
            if str[l]==' '{
                str[nl] = '0'
                nl--
                str[nl] = '2'
                nl--
                str[nl] = '%'
                nl--
                l--
            } else {
                str[nl] = str[l]
                nl--
                l--
            }
        }
    }
  • 相关阅读:
    python3第六天
    python3第五天
    python3第四天
    python3 第三天
    python3第二天
    python3(2)
    python3(1)
    网络通信 & 初识socket
    python中包的语法
    模块语法
  • 原文地址:https://www.cnblogs.com/dingxiaoqiang/p/14629059.html
Copyright © 2020-2023  润新知