空格替换
2018-01-15 17:46
99 查看
题目描述 请编写一个方法,将字符串中的空格全部替换为“%20”。假定该字符串有足够的空间存放新增的字符,并且知道字符串的真实长度(小于等于1000),同时保证字符串由大小写的英文字母组成。 给定一个string iniString 为原始的串,以及串的长度 int len, 返回替换后的string。 测试样例: "Mr John Smith”,13 返回:"Mr%20John%20Smith" ”Hello World”,12 返回:”Hello%20%20World” class Replacement { public: string replaceSpace(string iniString, int length) { // write code here //思路一:遍历的时候遇到一个就替换 /*for(int i = 0; i < length; ++i) { if(iniString[i] == ' ') { iniString.replace(i, 1, "%20"); i+=2; length+=2; } } return iniString; */ //思路二:先计算空格个数,然后扩大iniString的大小 //都从后往前遍历 int num = 0; for(int i = 0; i < length; ++i) if(iniString[i] == ' ') num++; iniString.resize(length+num*2); for(int i = length - 1, j = length+num*2-1; i >= 0; i--) { if(iniString[i] == ' ') { iniString[j] = '0'; iniString[j-1] = '2'; iniString[j-2] = '%'; j -= 3; } else { iniString[j--] = iniString[i]; } } return iniString; } };
相关文章推荐
- 正则表达式替换括号里的空格
- 题目1510:替换空格
- ORACLE-字符串替换 去空格
- 面试题4:替换空格
- 替换空格
- 替换空格和清除空格
- 剑指offer——替换空格
- python 正则字符串替换 re.sub 替换输入参数字符串inStrings 所有的一个或多个空格替换为newstring
- 字符串含空格替换
- 牛客网-剑指Offer-替换空格
- 剑指offer_替换空格
- 替换空格
- 剑指offer之空格替换
- 【剑指offer】替换空格
- 面试题4. 替换空格
- 面试题目4:替换空格
- 替换字符串中空格为”%20“
- LintCode 空格替换
- 【Java】编写一个方法,将字符串中的空格全部替换为“ ”
- 字符串(替换空格-剑指offer!!!)