Java实现复原IP地址的方法
给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式。
示例:
输入: “25525511135”
输出: [“255.255.11.135”, “255.255.111.35”]
PS:
跪了,得LeetCode者得天下,上次我学的位运算符,这次学的ip地址
class Solution { private List<String> res = new ArrayList<>(); public List<String> restoreIpAddresses(String s) { if (s.length() < 4) //非法输入 return res; backtrack(s, 0, new StringBuilder(), 0); return res; } private void backtrack(String s, int start, StringBuilder sb, int pointNumOfSb) { if (pointNumOfSb > 4) //大于三个点,则剪枝,这里大于4是因为最后一次还会加一 return; if (start == s.length() && pointNumOfSb == 4) { //pointNumOfSb==4,则是一个合法的IP res.add(sb.toString().substring(1)); //substring(1)是因为每次append(".xxx"),第零个位置是"." return ; } for (int i = start; i < s.length() && i - start < 3; i++) { //i-start < 3,如果大于三位数则返回 String x = s.substring(start, i + 1); if (x.charAt(0) == '0' && x.length() > 1) //如果是0xx这种则返回 return ; if (Integer.parseInt(x) <= 255) { sb.append("." + x); backtrack(s, i + 1, sb, pointNumOfSb + 1); sb.delete(sb.lastIndexOf("."), sb.length()); } } } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Java 判断IP地址的合法性实例详解
Java 判断IP地址的合法性 0.前言 有时候我们要对用户输入的IP地址进行校验,判断这个IP地址是不是一个合法的IP地址. 1.实现思路 最简单的实现方法是构造一个正则表达式.判断用户的输入与正则表达式是否匹配.若匹配则是正确的IP地址,否则不是正确的IP地址.这里的难点是如何构造出一个可用的正则表达式. 2.Java实现 /** * Created by HUPENG on 2016/9/26. */ public class Tool { /** * 判断IP地址的合法性,这里采用了正则
-
java实现根据ip地址获取地理位置的代码分享
前几天想给网站后台加个解析ip所在地理位置的功能,在网上看了一些博客,找了几段程序,但总觉得写的不够简洁,感觉很啰嗦.下面这个程序,感觉还算简洁,于是整理调试了一下,可以用,程序调用了"腾讯ip分享计划"提供的接口,当然也可以改成ip138提供的接口,不过这两个网站返回的字符串格式有些不同,要分别做解析. public String getAddressByIP() { try { String strIP = "0.0.0.0"; URL url = new UR
-
Java判断本机IP地址类型的方法
复制代码 代码如下: package net; import java.net.*; /* * getAddress方法和getHostAddress类似,它们的唯一区别是getHostAddress方法返回的是字符串形式的IP地址, * 而getAddress方法返回的是byte数组形式的IP地址. * Java中byte类型的取值范围是-128?127.如果返回的IP地址的某个字节是大于127的整数,在byte数组中就是负数. * 由于Java中没有无符号byte类型,因此,
-
JAVA如何获取客户端IP地址和MAC地址
本文介绍了JAVA如何获取客户端IP地址和MAC地址 ,分享给大家,具体如下: 1.获取客户端IP地址 public String getIp(HttpServletRequest request) throws Exception { String ip = request.getHeader("X-Forwarded-For"); if (ip != null) { if (!ip.isEmpty() && !"unKnown".equalsIg
-
java实现ip地址与十进制数相互转换
先看实例 代码如下 复制代码 代码如下: classip { privatestaticlongiptolong(stringstrip) //将127.0.0.1形式的ip地址转换成10进制整数,这里没有进行任何错误处理 { intj=0; inti=0; long[]ip=newlong[4]; intposition1=strip.indexof("."); intposition2=strip.indexof(".",position1+1); intpos
-
java实现根据ip地址获取地理位置
最近项目某个功能需要根据ip地址从第三方接口获取详细的地理位置,从网上找了很多例子,主要接口有新浪的,淘宝的,腾讯的.试了淘宝的,如果是数量级小的还可以,如果数量级达到上十万级就速度慢了,会导致系统崩溃.下面例子是新浪的,例子不是适合每个项目,需要改一下. /** ipSearchUrl=http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=(这是新浪的接口地址) 在项目中新浪的接口地址没有直接写死,而是去读属性文件. *
-
java中获取当前服务器的Ip地址的方法
1.tomcat是一款免费的开源Web服务器,如果部署在本地,那么对应的那么为localhost,对应地址为127.0.0.1. 例子:可以通过http://localhost:8080/项目root值访问,也可以通过http://127.0.0.1/项目root值访问. 如果部署在服务器(linux)系统类,则需要通过服务器的Ip地址进行访问. 2.下面说说怎么获取Ip地址: 获取本地的Ip地址: public static void main(String[] args) { try { I
-
JAVA获得域名IP地址的方法
本文实例讲述了JAVA获得域名IP地址的方法.分享给大家供大家参考.具体如下: import java.net.InetAddress; import java.net.UnknownHostException; public class TestInetAddress { InetAddress myIpAddress = null; InetAddress[] myServer = null; public static void main(String args[]) { TestInet
-
java中通过网卡名称获取IP地址
复制代码 代码如下: package me.xuzs.sso.test; import java.net.InetAddress;import java.net.NetworkInterface;import java.net.SocketException;import java.util.Enumeration; public class InternetTest { public static void main(String[] args) { String netCard
-
Java实现复原IP地址的方法
给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 示例: 输入: "25525511135" 输出: ["255.255.11.135", "255.255.111.35"] PS: 跪了,得LeetCode者得天下,上次我学的位运算符,这次学的ip地址 class Solution { private List<String> res = new ArrayList<>(); public List&
-
Java 根据网址查询DNS/IP地址的方法
需求: 给定一个URL地址, 例如: http://www.cncounter.com/tools/shorturl.php, 解析对应的IP地址和端口号. 说明: 本文不涉及底层的 DNS 协议, 直接使用Java平台提供的API进行操作. DNS也就是 Domain Name Service,即 域名服务. 我们知道, Java中与网址有关的类包括 java.net.URL 和 java.net.URI 等, 其中 URI 是资源定位符, 可能包括 file: 之类的协议. 所以此处我们使用
-
C++实现LeetCode(93.复原IP地址)
[LeetCode] 93.Restore IP Addresses 复原IP地址 Given a string containing only digits, restore it by returning all possible valid IP address combinations. Example: Input: "25525511135" Output: ["255.255.11.135", "255.255.111.35"] 这
-
Android开发实现在Wifi下获取本地IP地址的方法
本文实例讲述了Android开发实现在Wifi下获取本地IP地址的方法.分享给大家供大家参考,具体如下: 代码核心介绍: WifiManager类提供了对设备Wifi功能的管理,包括Wifi开关的打开和关闭,IP地址获取等等,早期的Android版本甚至支持对于IP的设置.在这里仅介绍其简单的一个小应用--获取IP地址. 首先先添加Uses-Permission:CHANGE_WIFI_STATE,WAKE_LOCK和ACCESS_WIFI_STATE.代码如下(AndroidManifest.
-
为VMware的多台虚拟机绑定IP地址的方法
最近我在VMware上面用三台虚拟机搭建了一个hadoop的集群.但是后来发现了一个问题:每次重新打开三台机器的时候,因为主机所连接的网络的变化,会导致VMware中的这三台虚拟机的IP地址也变掉.这会导致ssh失败,三台机器无法通讯.所以总结了一种方式来绑定虚拟机的IP地址. 1.打开虚拟机后,在编辑>模拟网络编辑器>NET设置中查看自己的IP地址.子网掩码.和网关. 2.开启虚拟机服务 我的电脑--> 管理 -->服务和应用程序-->服务 (这个一般情况下我们的电脑都已经
-
JAVA获取本地MAC地址的方法
InetAddress对象 此类表示Internet协议(IP)地址. IP地址是由IP使用的32位或128位无符号数字,构建UDP和TCP协议的低级协议. IP地址结构由定义RFC 790: Assigned Numbers , RFC 1918: Address Allocation for Private Internets , RFC 2365: Administratively Scoped IP Multicast和RFC 2373: IP Version 6 Addressing
-
jsp获取客户端IP地址的方法
本文实例讲述了jsp获取客户端IP地址的方法.分享给大家供大家参考,具体如下: public static String getIpAddr(HttpServletRequest request) { String ip = request.getHeader("X-Forwarded-For"); if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request
-
Linux通过命令仅获取IP地址的方法
一同事的朋友正在参加笔试,遇到这么一个问题让他帮忙解决,结果同事又找到我帮他搞定.真是感慨:通讯发达在某些方面来说,真不知是不是好事啊!题目大致如下所示,一般我们使用ifconfig查看网卡信息,请问你可以通过什么命令,让其只输出IP地址192.168.42.128 看似简单的问题,实现起来也不是太简单.看看下面的思路吧 [root@DB-Server ~]# ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:0C:29:9E:70:0E inet
-
TCP Wrappers防火墙介绍与封锁IP地址的方法
Tcp_Wrappers是一个用来分析TCP/IP封包的软件,类似的IP封包软件还有iptables,linux默认都安装了此软件,作为一个安全的系统,Linux本身有两层安全防火墙,通过IP过滤机制的iptables实现第一层防护,iptables防火墙通过直观地监视系统的运行状况,阻挡网络中的一些恶意攻击,保护整个系统正常运行,免遭攻击和破坏.如果通过了第一层防护,那么下一层防护就是tcp_wrappers了,通过Tcp_Wrappers可以实现对系统中提供的某些服务的开放与关闭.允许和禁止
随机推荐
- 详解用node.js实现简单的反向代理
- java发送email一般步骤(实例讲解)
- Java Swing中的表格(JTable)和树(JTree)组件使用实例
- 深入探讨JAVA中的异常与错误处理
- java实现微博后台登录发送微博
- js window.onload 加载多个函数的方法
- composer.lock文件的作用
- Python上下文管理器和with块详解
- centos7 用rpm安装mysql详解
- JS写的贪吃蛇游戏(个人练习)
- nodeJs内存泄漏问题详解
- 算法系列15天速成 第二天 七大经典排序【中】
- JS实现带鼠标效果的头像及文章列表代码
- Javascript的闭包
- JavaScript从数组的indexOf()深入之Object的Property机制
- 不用登录也能编辑用户的注册表
- 浅谈java中文本框和文本区
- C++直接初始化与复制初始化的区别深入解析
- c# 命名空间和程序集
- ASP上传图片功能的又一实现(OLE对象)