剑指Offer 2 :替换空格

2017-05-18  本文已影响0人  clshinem
题目

将字符串中的每个空格都替换为“%20”

虽然我的代码不是这么写的,但是还是来记录下这个题的算法思路:
We are happy
如果从头找的话,每次找到一个插入三个,这样数组要不断往后挪,移动占了时间太长,所以从后往前找,先计算出总共的长度,如上给出的字符串,原来的长度是12,替换后的就是18,数组从后往前走,先从18开始放,遇到空格则依次放入 0 2 %再往前遍历并放入
大概写了一下,没有运行,也肯定有错误

length = len(list)
j = length + num_black * 2
char temp = [j]

for(i= length-1;i>=0;i--){
    if( a[i] != ' '){
        temp[j--] = a[i]
        }
    else{
        temp[j--] = '0'
        temp[j--] = '2'
        temp[j--] = '%'
        }
    }

下面是python代码,我感觉是欺负人····😆

def replaceString(s):
    return a.replace(' ','%20')

为了证明我真的有做个这个题,所以我又写了一个版本

s = 'We are happy'
list = [x for x in s]
for i in range(0,len(list)):
    if list[i] == ' ':
        list[i] = '%20'
a = ''
b = a.join(list)
print b
上一篇下一篇

猜你喜欢

热点阅读