【Java】力扣 - 刷题笔记 - 1108
【Java】力扣 - 刷题笔记 - 1108
每日一道题,提升一点点
题目介绍
1108. IP 地址无效化
给你一个有效的 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 地址
解题思路
- 1.题目分析
我们这一题的最终目标就是用 [.] 代替 .
根据这个目标,我们可以用 . 将 address 分割成一个数组,再用 [.] 拼接上
public String defangIPaddr(String address) {
// 初始化输出字符串
String res ="";
// 用 . 将字符串分割成数组
String[] area = address.split("\\.");
// 再用 [.] 拼接上
for ( int i = 0; i < area.length - 1; i++){
res = res + area[i] + "[.]";
}
res += area[area.length - 1];
return res;
}
- 2.提交结果
什么鬼,这么优秀的方案加起来才 11%,我还从没受过这等委屈!!! 重来一次
- 3.重新分析
如果说替换的字符和换上去的字符都是固定的话,String类好像有个方法可以直接替换
public String defangIPaddr(String address) {
// 直接用 replace 方法:将 “.” 替换为 “[.]”
String res = address.replace(".","[.]");
return res;
}
- 4.提交结果