Welcome to Subscribe On Youtube
1108. Defanging an IP Address
Description
Given a valid (IPv4) IP address
, return a defanged version of that IP address.
A defanged IP address replaces every period "."
with "[.]"
.
Example 1:
Input: address = "1.1.1.1" Output: "1[.]1[.]1[.]1"
Example 2:
Input: address = "255.100.50.0" Output: "255[.]100[.]50[.]0"
Constraints:
- The given
address
is a valid IPv4 address.
Solutions
Solution 1: Direct Replacement
We can directly replace the '.'
in the string with '[.]'
.
The time complexity is $O(n)$, where $n$ is the length of the string. Ignoring the space consumption of the answer, the space complexity is $O(1)$.
-
class Solution { public String defangIPaddr(String address) { return address.replace(".", "[.]"); } }
-
class Solution { public: string defangIPaddr(string address) { for (int i = address.size(); i >= 0; --i) { if (address[i] == '.') { address.replace(i, 1, "[.]"); } } return address; } };
-
class Solution: def defangIPaddr(self, address: str) -> str: return address.replace('.', '[.]')
-
func defangIPaddr(address string) string { return strings.Replace(address, ".", "[.]", -1) }
-
function defangIPaddr(address: string): string { return address.split('.').join('[.]'); }