返回顶部

收藏

o(n)时间复杂度替换字符串中空格为%20

更多
class offer_book:
    def replaceBlank( p_str, rpl_str ):
        blank = ' '
        numOfBlank = 0
        originalLen = len( p_str )
        for char in p_str:
            if char == blank:
                numOfBlank += 1
        originalIndex = originalLen - 1
        newLen = originalLen + numOfBlank * ( len( rpl_str ) - len( blank ) )
        newIndex = newLen - 1
        newStr = [ blank ] * newLen
        while originalIndex >= 0:
            if p_str[ originalIndex ] == blank:
                newStr[ newIndex ] = '0'
                newIndex -= 1
                newStr[ newIndex ] = '2'
                newIndex -= 1
                newStr[ newIndex ] = '%'
                newIndex -= 1
            else:
                newStr[ newIndex ] = p_str[ originalIndex ]
                newIndex -= 1
            originalIndex -= 1
        return str( newStr )

newStr = offer_book.replaceBlank( ' we are happy! ', '%20' )
print( newStr )

标签:python

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. 小码哥 发表 2017-11-07 08:00:25 Python中的时间处理大总结
  2. 小码哥 发表 2017-11-07 08:19:22 如何快速爬取B站全站视频信息
  3. Gavin 发表 2017-11-06 10:01:37 Python批量给云主机配置安全组
  4. Gavin 发表 2017-11-06 10:06:40 如何使用pdb工具来调试python脚本?
  5. 博主 发表 2017-11-05 04:08:13 C语言实现的Python扩展模块
  6. 博主 发表 2017-11-04 14:40:16 Python 3 极简教程 之 基本数据类型
  7. zhu329599788@126 发表 2017-10-18 09:48:23 打印杨辉三角(python版)
  8. 小码哥 发表 2017-11-04 05:45:55 如何通过Python/Shell对HTTP服务状态的监控?
  9. techug 发表 2017-11-02 03:36:46 用Python复制文件的九种方法
  10. techug 发表 2017-11-03 03:46:27 python奇技淫巧
  11. gonwan 发表 2016-01-11 12:52:41 Coroutines in Python
  12. Charles 发表 2016-12-24 12:25:13 在 CentOS 6.8 上安装 Python 2.7

发表评论