您的位置:首页 > 其它

替换空格

2017-11-09 19:40 176 查看
题目描述

请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

语言:c++

class Solution {
public:
void replaceSpace(char *str,int length) {
//遍历一遍,看一共有几个空格num
int num=0;
for(int i=0;i<length;i++)
{
if(str[i]==' ')
{
num++;
}
}
int size=length+num*2;//新的数组的长度
//从最右边开始遍历,开始移动
int i=length-1; //可以看成旧数组的最后一个元素
int cur=size-1; //可以看出新数组的最后一个元素
while(i>=0)
{
if(str[i]!=' ')
{
str[cur]=str[i];

cur--;
}
else
{
str[cur]='0';
str[cur-1]='2';
str[cur-2]='%';
cur=cur-3;

}
i--;
}

}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: