替換空格

題目描述

請實現一個函數,將一個字符串中的每個空格替換成“%20”。例如,當字符串爲We Are Happy.則經過替換之後的字符串爲We%20Are%20Happy。
 
題解:我們先統計出來空格的數量,計算出替換後的字符串的長度,然後從後往前替換即可。
 
參考代碼:
 1 class Solution {
 2 public:
 3     void replaceSpace(char *str,int length) {
 4         int len=0,clen=0;
 5         for(int i=0;str[i];++i)
 6         {
 7             len++;
 8             if(str[i]==' ') clen++;
 9         }
10         char *s=str+len;
11         char *cs=str+len+clen*2;
12         while(s<cs)
13         {
14             if(*s==' ')
15             {
16                 *cs--='0';
17                 *cs--='2';
18                 *cs--='%';
19             }
20             else *cs--=*s;
21             --s;
22         }
23     }
24 };
View Code

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章