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
addressis 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('[.]'); }