剑指offer:替换空格

来源:互联网 发布:linux配置hadoop环境 编辑:程序博客网 时间:2024/06/05 10:06

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

class Solution {public:    void replaceSpace(char *str,int length)     {      int len=0;    char *p1=str;    while(*p1!='\0')    {       if(*p1==' ')           len++;        p1++;    }    int firstlength=length;    int lastlength=length+len*2;    while(lastlength!=firstlength)//建立指向前后位置的标志    {       if(str[firstlength]==' ')       {           str[lastlength--]='0';           str[lastlength--]='2';           str[lastlength--]='%';       }       else       {           str[lastlength--]=str[firstlength];       }        firstlength--;//每次前一个指针都要检测--后的位置的字符    }    }};
0 0
原创粉丝点击