LeetCode.1108-使IP地址无效(Defanging an IP Address)

这是小川的第393次更新,第426篇原创

01 看题和准备

今天介绍的是LeetCode算法题中Easy级别的第257题(顺位题号是1108)。给定有效(IPv4)IP地址,返回该IP地址的无效版本。

一个无效的IP地址,是指用"[.]"取代每个点号"."

例如:

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

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

注意

  • 给定地址是有效的IPv4地址。

02 第一种解法

题目的意思是将字符串中的"."替换成"[.]",直接使用replace方法即可。

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

03 第二种解法

不使用String的replace方法,使用StringBuilder,依次遍历address中的字符,碰到"."就拼接"[.]",其他字符不变,最后返回StringBuilder对象转成的String。

public String defangIPaddr2(String address) {
    StringBuilder sb = new StringBuilder();
    for (int i=0; i<address.length(); i++) {
        if (address.charAt(i) == '.') {
            sb.append("[.]");
        } else {
            sb.append(address.charAt(i));
        }
    }
    return sb.toString();
}

04 小结

算法专题目前已连续日更超过八个月,算法题文章263+篇,公众号对话框回复【数据结构与算法】、【算法】、【数据结构】中的任一关键词,获取系列文章合集。

以上就是全部内容,如果大家有什么好的解法思路、建议或者其他问题,可以下方留言交流,点赞、留言、转发就是对我最大的回报和支持!

原文地址:https://www.cnblogs.com/xiaochuan94/p/11261922.html

时间: 2024-11-07 11:26:14

LeetCode.1108-使IP地址无效(Defanging an IP Address)的相关文章

API之IP地址查询---权威的IP地址查询接口集合

原文地址:http://yushine.iteye.com/blog/1717586 推荐实用IP138 http://www.baidu.com/s?wd=IP&rsv_spt=1&issp=1&f=8&rsv_bp=0&ie=utf-8&tn=19045005_9_pg&rsv_enter=1&rsv_sug3=2&rsv_sug4=60&rsv_sug1=1&rsv_sug2=0&inputT=520  

Centos如何设置IP地址,LINUX怎么修改IP地址

Centos如何设置IP地址,LINUX怎么修改IP地址 1 2 3 4 5 6 7 分步阅读 百度经验:jingyan.baidu.com 对于很多刚刚接触linux的朋友来说,如何设置linux系统的IP地址,作为第一步,下面小编以centos系统为例,给大家演示如何给centos设置IP地址,如何修改linux 系统IP地址? 步骤阅读 百度经验:jingyan.baidu.com 工具/原料 linux系统,centos 百度经验:jingyan.baidu.com 查看IP地址 1 登

Linux_Centos如何设置IP地址,LINUX怎么修改IP地址

对于很多刚刚接触linux的朋友来说,如何设置linux系统的IP地址,作为第一步,下面小编以centos系统为例,给大家演示如何给centos设置IP地址,如何修改linux 系统IP地址? linux系统,centos 查看IP地址 登陆连接centos系统,输入 ifconfig 可以查看到当前本机的IP地址信息,如下图 临时设置IP地址 如本机为例,上面查询IP为1.117,输入 ifconfig eth0 (默认是第一个网卡) 后面接IP地址, 网络掩码和 网关,如果不设置,就使用默认

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" 参考代码: class Sol

通过域名获取IP地址和本机IP地址

#include <stdio.h> #include <stdlib.h> #include <winsock2.h> #pragma comment(lib, "ws2_32.lib") int main(int argc, char *argv[]) {     WSADATA wsaData;     WSAStartup(MAKEWORD(2, 2), &wsaData);          char webSite[80] = {

自动设置IP地址和自动获取IP地址bat批处理文件

自动设置IP地址.bat Echo offecho  手动设置IP地址....Netsh interface IP Set Addr "本地连接" Static 192.168.1.8 255.255.255.0 192.168.1.1 1echo  手动设置DNS地址....Netsh interface IP Set dns "本地连接" static 202.106.196.115 primaryecho  手动设置备份DNS地址....Netsh inter

Java 判断IP地址为内网IP还是公网IP

tcp/ip协议中,专门保留了三个IP地址区域作为私有地址,其地址范围如下: 10.0.0.0/8:10.0.0.0-10.255.255.255 172.16.0.0/12:172.16.0.0-172.31.255.255 192.168.0.0/16:192.168.0.0-192.168.255.255 那么,直接上代码吧: public static boolean internalIp(String ip) { byte[] addr = IPAddressUtil.textToNu

C/C++ 获得公网ip地址和内网ip

获得公网ip: bool getPublicIp(string& ip) { int sock; char **pptr = NULL; struct sockaddr_in destAddr; struct hostent *ptr = NULL; char destIP[128]; sock = socket(AF_INET,SOCK_STREAM,0); if( -1 == sock ){ perror("creat socket failed"); return fal

F5 cookie值与IP地址(二):将IP地址转换成F5 cookie值

简  介 在上一篇中,我们介绍了如何将cookie码转换成IP地址,这次我们将介绍如何将IP地址转换成cookie码.如何上一篇分析清楚了,本篇也很简单. 链接:http://showing.blog.51cto.com/11976328/1841564 转换步骤 下面,我们将以IP地址:192.168.1.1为例: 192.168.1.1->倒置顺序->1 1 168 192->分别转换为16进制->1 1 A8 C0->不够两位的补0->01 01 A8 C0-&g