剑指 Offer 05. 替换空格
2024-10-20 09:21:27
链接:https://leetcode-cn.com/problems/ti-huan-kong-ge-lcof/
标签:字符串
题目
请实现一个函数,把字符串 s
中的每个空格替换成"%20"。
输入:s = "We are happy."
输出:"We%20are%20happy."
0 <= s 的长度 <= 10000
分析
对于这题思路很简单,只需要遍历字符串s,然后判断是否为空格,是就进行替换,不是就原样。保存结果可以使用StringBuilder或者StringBuffer,StringBuffer是线程安全的,StringBuilder是线程不安全的,这里不涉及多线程,所以使用StringBuilder效率更高。StringBuffer和StringBuilder拼接字符串都比String的效率高。
编码
class Solution {
public String replaceSpace(String s) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
if (c == ' ') {
sb.append("%20");
continue;
}
sb.append(c);
}
return sb.toString();
}
}
时间复杂度O(n),空间复杂度O(1)
最新文章
- spring maven pom.xml设置
- 利用sharding-jdbc分库分表
- oracle 存储过程创建及执行简单实例
- 禁用CMFCRibbonApplicationButton的单击和双击事件
- IOS启动顺序
- 2015安徽省赛 A.First Blood
- 深入浅出ES6(八):Symbols
- Android实例-如何使用系统剪切板(XE8+小米2)
- RPM命令用法详解
- 【转】ubuntu 12.04 LTS将关闭最大化最小化移动到右上角
- 利用FreeMarker静态化网页
- spring mvc 提交数组等复杂类型
- 十分钟搞懂什么是CGI(转)
- selenium的一些使用方法
- vue(初探预渲染)
- redis的架构(一)
- java实现四则运算应用(基于控制台)
- LeetCode(49): 字母异位词分组
- android apk 在哪个目录下安装?
- java基础-day7
热门文章
- React-列表 & Key
- visual studio 将他人的 vtk 程序在本机生成
- Thyemleaf报错: Method call: Attempted to call method *** on null context object
- 一、HttpRunner学习汇总
- Nebula Graph 的 Ansible 实践
- 微信小程序支付功能完整流程
- Asp.NetCore Web开发之Nlog日志配置
- lower_bound和upper_bound的实现
- Convert character array to string in MATLAB
- 关于Annotation注解的理解