替换空格
OJ地址:替换空格
【代码】
void replaceSpace(char *str,int length) {
if(length == 0)
return;
int count = 0; //记录空格数
for(int i = 0; i < length; i++)
{
if(str[i] == ' ')
++count;
}
if(count == 0) //如果没有空格,直接退出
return;
int old_length = length - 1;
int new_length = length + count * 2 - 1;
for(int i = old_length; i >= 0; i--)
{
if(str[i] == ' ')
{
str[new_length--] = '0';
str[new_length--] = '2';
str[new_length--] = '%';
}
else
{
str[new_length--] = str[i];
}
}
}
【时间复杂度】O(length)
【空间复杂度】O(1)