替换空格
题目描述
请实现一个函数,将一个字符串中的每个空格替换成“%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 };
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步