归子莫的博客

「笔杆揭不起,绘不出青烟别春泥 ————归子莫」

LeetCode–替换空格

博客说明

文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢!

说明

剑指 Offer 05. 替换空格

题目

请实现一个函数,把字符串 s 中的每个空格替换成”%20”。

示例 1

1
2
输入:s = "We are happy."
输出:"We%20are%20happy."

限制

1
0 <= s 的长度 <= 10000

Java

思路

字符串是不可以改变的,只能新建一个字符串,由空格变为%20,是从一个字符到了三个字符,在初始化数组的时候需要把长度加大

代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class Solution {
public String replaceSpace(String s) {
int length = s.length();
char[] array = new char[length*3];
int len = 0;
for(int i = 0; i < length; i++){
char c = s.charAt(i);
if(c == ' '){
array[len++] = '%';
array[len++] = '2';
array[len++] = '0';
}else{
array[len++] = c;
}
}
String res = new String(array,0,len);
return res;
}
}

感谢

leetcode

以及勤劳的自己

评论