LeetCode题解之替换空格

替换空格

题目描述

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

示例 1:

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

限制:

0 <= s 的长度 <= 10000

解题思路

方法一:replace 函数

直接使用 String 类的 replace 函数进行替换。

复杂度分析

  • 时间复杂度:O(n)。
  • 空间复杂度:O(1)。

代码实现

class Solution {
    public String replaceSpace(String s) {
        return s.replace(" ", "%20");
    }
}

方法二:迭代

对字符串进行迭代,使用 StringBuilder 来拼接结果串。

复杂度分析

  • 时间复杂度:O(n)。
  • 空间复杂度:O(n)。

代码实现

class Solution {
    public String replaceSpace(String s) {
        StringBuilder sb = new StringBuilder();
        for(Character c : s.toCharArray())
        {
            if(c == ' ') {
              sb.append("%20");
            } else {
              sb.append(c);
            }
        }
        return sb.toString();
    }
}

你可能感兴趣的:(LeetCode题解之替换空格)