【Java】力扣 - 刷题笔记 - 1108

【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.提交结果
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_35132089/article/details/108003911