[LeetCode]面试题 01.03. URL化

题目描述

难度 简单

URL化。编写一种方法,将字符串中的空格全部替换为%20。假定该字符串尾部有足够的空间存放新增字符,并且知道字符串的“真实”长度。(注:用Java实现的话,请使用字符数组实现,以便直接在数组上操作。)

示例 1:

输入:"Mr John Smith    ", 13
输出:"Mr%20John%20Smith"

示例 2:

输入:"               ", 5
输出:"%20%20%20%20%20"

提示:

    字符串长度在 [0, 500000] 范围内。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/string-to-url-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。


思路

使用StringBuilder做拼接。

代码实现

class Solution {
    public String replaceSpaces(String S, int length) {
        char[] chars = S.toCharArray();
        StringBuilder stringBuilder = new StringBuilder();

        //O(N)
        for (int i = 0; i < length; i++) {
            char tmp = chars[i];
            if (tmp == ' ') {
                stringBuilder.append("%20");
            } else {
                stringBuilder.append(tmp);
            }
        }
        return stringBuilder.toString();
    }
}

执行结果:通过
执行用时:17 ms, 在所有 Java 提交中击败了30.42% 的用户
内存消耗:47.1 MB, 在所有 Java 提交中击败了15.89% 的用户
通过测试用例:32 / 32
2021年 11月 15日 星期一 11:55:52 CST[LeetCode]面试题 01.03. URL化

上一篇:Java逗号拼接三种方法,Joiner、StringBuilder、Java8Stream


下一篇:字符串类