替换空格 将一个字符串中的空格替换成“ ”
2017-02-16 15:24
218 查看
题目描述
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。第一次看到的时候,以为看错了,这也忒简单了,python 的replace,java的replaceAll,轻松完成!
当然,不可能那么简单的。
算法菜鸟还是看看别人的思路吧,真的是佩服,哎,算法之路漫漫!
思路:先计算原字符串中空格的数量,然后计算新字符串的长度,这里的新不是新分配空间,而是在原来的基础上,加上%20占的空间。然后从后往前替换,为什么从后往前呢,因为如果从前往后替换,每次遇到空格,后面的字符都要往后移动,这效率就低了。从后往前就没这个问题,因为后面的都是空闲空间,数据不会丢失。
好了,本来用python写的,但是,调试的时候有个问题,因为新字符串的长度要更长,不知道怎么像java setlength那样子改变字符串的长度,就只能用java了。这是别人写好的,按照思路自己写了一下。
相关文章推荐
- QT如何将字符串中连续的多个空格用一个替换
- 把一个字符串的空格替换成20%
- }1.字符串替换空格:请实现一个函数,把字符串中的每个空格替换成“%20”。例如输入“we are happy.”,则输出“we%20are%20happy.”。
- 实现一个函数,把字符串中的每个空格替换成”%20”
- 编写一个方法,将字符串中的空格全部替换为“%20”
- 正则表达式将字符串中的所有连续空格替换成一个空格
- 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
- 使用正则表达式将一个字符串中连续的多个(两个或者两个以上)替换为一个空格
- 字符串所有连续的空格替换为一个空格
- 实现一个函数,将字符串的每一个空格替换成 %20
- 如何将字符串中连续的多个空格用一个替换
- 替换空格:请实现一个函数,把字符串中的每个空格替换成“%20”
- 将一个字符串中的空格全部替换为“%20”
- 【Java】编写一个方法,将字符串中的空格全部替换为“ ”
- 【Daily】SQL中替换字符串中连续空格为一个空格的方法
- [剑指offer][面试题04]实现一个函数,将字符串中的空格替换为“ ”.例如输入“we are happy.”,输出"we are happy.".
- c# 字符串去掉两端空格,并且将字符串中多个空格替换成一个空格
- 请实现一个函数,把字符串中的每个空格替换成“%20”,例如输入 “We are Happly。” 则输出“we%20are%20happy。”
- 字符串替换空格:请实现一个函数,把字符串中的每个空格替换成“%20。
- 将字符串中多个空格替换成一个空格