Skip to content

Latest commit

 

History

History
115 lines (80 loc) · 2.37 KB

File metadata and controls

115 lines (80 loc) · 2.37 KB
comments difficulty edit_url rating source tags
true
简单
1084
第 144 场周赛 Q1
字符串

English Version

题目描述

给你一个有效的 IPv4 地址 address,返回这个 IP 地址的无效化版本。

所谓无效化 IP 地址,其实就是用 "[.]" 代替了每个 "."

 

示例 1:

输入:address = "1.1.1.1"
输出:"1[.]1[.]1[.]1"

示例 2:

输入:address = "255.100.50.0"
输出:"255[.]100[.]50[.]0"

 

提示:

  • 给出的 address 是一个有效的 IPv4 地址

解法

方法一:直接替换

我们直接将字符串中的 '.' 替换为 '[.]' 即可。

时间复杂度 $O(n)$,其中 $n$ 为字符串的长度。忽略答案的空间消耗,空间复杂度 $O(1)$

Python3

class Solution:
    def defangIPaddr(self, address: str) -> str:
        return address.replace('.', '[.]')

Java

class Solution {
    public String defangIPaddr(String address) {
        return address.replace(".", "[.]");
    }
}

C++

class Solution {
public:
    string defangIPaddr(string address) {
        for (int i = address.size(); i >= 0; --i) {
            if (address[i] == '.') {
                address.replace(i, 1, "[.]");
            }
        }
        return address;
    }
};

Go

func defangIPaddr(address string) string {
	return strings.Replace(address, ".", "[.]", -1)
}

TypeScript

function defangIPaddr(address: string): string {
    return address.split('.').join('[.]');
}