剑指offer:02

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

 

 1 class Solution {
 2 public:
 3     void replaceSpace(char *str,int length) {
 4         int spanum = 0;
 5         for(int i=0; i<length; ++i){
 6             (str[i] == ' ') ? ++spanum : 0;
 7         }
 8         int newlen = length + spanum*2;
 9         int j = newlen-1;
10         for(int i=length-1; i>=0; --i){
11             if(str[i] == ' '){
12                 str[j--] = '0';
13                 str[j--] = '2';
14                 str[j--] = '%';
15             }
16             else{
17                 str[j--] = str[i];
18             }
19         }
20     }
21 };

 

posted on 2018-03-15 22:02  CreatorKou  阅读(112)  评论(0编辑  收藏  举报

导航