剑指offer-替换空格

wuchangjian2021-11-16 18:59:19编程学习

汇总:剑指offer算法合集

题目

请实现一个函数,把字符串 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中字符串不可变,修改的情况一般是使用StringBuilder,我们只需要创建一个StringBuilder,然后遍历当前字符串,如果遇到空格,则添加"%20",否则添加当前字符,最后把StringBuilder重新转回String即可

复杂度分析

遍历字符串,假设字符串的长度为n,则时间复杂度为O(n),需要StringBuilder进行存储,空间复杂度为O(n)

代码实现

class Solution {
    public String replaceSpace(String s) {
        StringBuilder stringBuilder = new StringBuilder();
        char[] chars = s.toCharArray();
        for (char c : chars) {
            //遍历字符数组,遇到空格则添加"%20",否则添加当前字符
            stringBuilder.append(c == ' ' ? "%20" : c);
        }
        return stringBuilder.toString();
    }
}

相关文章

c++11 多线程编程(二)------ 线程类构造函数深入理解

构造函数的参数 std::thread类的构造函数是使用可变参数模板实现的࿰...

中元节之夜,赏年度第三大满月

中元节之夜,赏年度第三大满月

2022-08-11 08:32:47 海报制作:冯娟8月12日,农历...

赋能乡村振兴,北师大学子牵手皇仓中学开展“线上夏令营”

赋能乡村振兴,北师大学子牵手皇仓中学开展“线上夏令营”

2022-08-20 07:27:48 暑期接近尾声,即将到来的新学期...

SPSS下载安装教程

1.SPSS下载安装 https://www.cnblogs.com/babyfei/...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。