题目
请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
示例 1:
输入:s = “We are happy.”
输出:“We%20are%20happy.”
限制:
0 <= s 的长度 <= 10000
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/ti-huan-kong-ge-lcof
解题思路
java中字符串不可变,使用遍历的思想
代码
class Solution {
public String replaceSpace(String s) {
if (s == null) {
return s;
}
StringBuilder builder = new StringBuilder();
// 迭代字符串
for (char c : s.toCharArray()) {
if (c == ' ') {
builder.append("%20");
} else {
builder.append(c);
}
}
return builder.toString();
}
}
复杂度
- 时间复杂度:O(n),遍历一遍字符串
- 空间复杂度:O(n),额外存储最多为3n