题目描述
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
思路:恩。人生苦短,我用python。
python实现:
1 # -*- coding:utf-8 -*- 2 class Solution: 3 # s 源字符串 4 def replaceSpace(self, s): 5 # write code here 6 return "%20".join(s.split(" "))
C++实现:
如果从头开始扫描,那么每遇到一个空格,都要将后面的字符往后移两位,最终时间复杂度O(n2),因此可以从串尾开始扫描。
1 class Solution { 2 public: 3 void replaceSpace(char *str,int length) { 4 //sOldLength记录origin string的长度,sNum记录空格个数。 5 int sOldLength = 0, sNum = 0, i = 0; 6 while (str[i] != '