题目描述
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
思路
从后往前替换
class Solution {
public:
void replaceSpace(char *str,int length) {
int i = length-1;
while(i >= 0) {
if((int)str[i] == 32) {
length += 2;
int j = length-1;
while(j > i+2) {
str[j] = str[j-2];
j--;
}
str[i] = '%';
str[i+1] = '2';
str[i+2] = '0';
}
i--;
}
}
};