替换空格
来源:互联网 发布:sql查询成绩最高分 编辑:程序博客网 时间:2024/05/20 13:16
题目描述
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
在Python脚本中只需要将空个替换就可以
# -*- coding:utf-8 -*-class Solution: # s 源字符串 def replaceSpace(self, s): #j=len(s) s=s.split(' ') str1=[] for i in range(len(s)): str1.append(s[i]) if (i!=len(s)-1): str1.append('%20') str1=''.join(str1) return str1 # write code here
时间有点慢,看了第一名的代码:
class Solution: # s 源字符串 def replaceSpace(self, s): #j=len(s) s=list(s) count=len(s) for i in range(0,count): if (s[i]==' '): s[i]='%20' return ''.join(s)
运行时间有点问题,不知道是和自己笔记本本身问题还是什么,需要进一步刷题来了解,不过总算没问题了。
以下是c++版本:
class Solution {public: void replaceSpace(char *str,int length) { int oldcount=0; int kongge=0; for (int i=0;str[i]!='\0';i++) { oldcount++; if (str[i]==' ') ++kongge; } int newlength=oldcount+2*kongge; char *pstr=str+oldcount; char *pstr1=str+newlength; while(pstr<pstr1) { if (*pstr==' ') { *pstr1--='0'; *pstr1--='2'; *pstr1--='%';} else { *pstr1--=*pstr; } --pstr; } }};
此版本是参照第一名代码写的,c++和python不同的地方是字符串有固定的大小,不能在原来的字符串直接进行添加元素,需要进行先计算内存大小后进行申请才能操作,具体术语不会,总之大概意思这样。
阅读全文
0 0
- 空格替换
- 替换空格
- 空格替换
- 替换空格
- 替换空格
- 替换空格
- 替换空格
- 替换空格
- 替换空格
- 替换空格
- 替换空格
- 空格替换
- 替换空格
- 替换空格
- 替换空格
- 替换空格
- 替换空格
- 替换空格
- python3-多线程
- 前端框架汇总
- 多个library使用butterknife的坑
- idea创建新的类(文件)时,自动添加作者创建时间(文件注释)等信息的设置方法
- thermal driver为zone device 添加sensor
- 替换空格
- 越限数据库功能 打印及画面拷贝功能
- 八皇后问题
- SpringMVC操作数据库的时候出现乱码
- 如何优雅编码 和 快速调试
- 利用jQuery、setInterval实现头像各种出现效果
- Oracle数据库备份与还原部分内容
- 2017大数据迎来新变化
- JMeter 的测试工具的简单实用