🌻算法,不如说它是一种思考方式🍀
算法专栏: 👉🏻123
上一题:344. 反转字符串
本文速览:
🌻剑指 Offer 05 . 替换空格 - 简单
🌼151. 反转字符串中的单词-中等
一、🌱剑指 Offer 05. 替换空格
- 题目描述:请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
- 来源:力扣(LeetCode)
- 难度:简单
- 提示:
0 <= s 的长度 <= 10000 - 示例 1:
输入:s = “We are happy.” 输出:“We%20are%20happy.”
🌴解题
1.字符串处理
char[] ans=s.toCharArray();
可以把字符串先转为字符数组;
s.charAt(i)
可以获取字符串下标i元素。
对于本题,把字符中的空格替换为%20
,这个长度发生改变,所以可以先计算出替换之后的长度,创建对应长度的字符数组,然后填入时候遇到空格加入%20即可。
- code:
class Solution {
public String replaceSpace(String s) {
int num=0;
for (int i = 0; i < s.length(); i++) {
if(s.charAt(i)==' ')
num++;
}
char[] ans=new char[s.length()+(num*2)];
num=0;
for (int i = 0; i < s.length()<