LeetCode 复原IP地址(探索字节跳动)
题目描述
给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式。
示例:
输入: "25525511135"
输出:["255.255.11.135", "255.255.111.35"]
解题思路
递归地搜索地址段,对于每个地址首先判断其是否为'0',若为0则其必须作为一个单独的地址段,接下来只能判断其下一个地址段;若不为0,则依次取1-3位数字组成的数作为地址段,注意在取3位的时候要保证其小于256,否则停止加入地址。最后在地址段总数为4且已遍历到字符串末尾时,将其加入到结果集合中。
代码
 class Solution {
 public:
     vector<string> restoreIpAddresses(string s) {
         vector<string> res;
         findIp(s, , , "", res);
         return res;
     }
     void findIp(string s, int idx, int part, string temp, vector<string> &res){
         if(part ==  && idx == s.length())
             res.push_back(temp.substr(, temp.length() - ));
         else if(part < ){
             if(s[idx] == ''){
                 findIp(s, idx + , part + , temp + "0.", res);
                 return;
             }
             for(int i = ; i < ; i++){
                 if(idx + i -  == s.length()) return;
                 int address = stoi(s.substr(idx, i));
                 if(address < )
                     findIp(s, idx + i, part + , temp + to_string(address) + ".", res);
             }
         }
     }
 };
LeetCode 复原IP地址(探索字节跳动)的更多相关文章
- LeetCode 简化路径(探索字节跳动)
		
题目描述 给定一个文档 (Unix-style) 的完全路径,请进行路径简化. 例如, path = "/home/", => "/home" path ...
 - [LeetCode] Restore IP Addresses  复原IP地址
		
Given a string containing only digits, restore it by returning all possible valid IP address combina ...
 - LeetCode:复原IP地址【93】
		
LeetCode:复原IP地址[93] 题目描述 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 示例: 输入: "25525511135" 输出: [&qu ...
 - Java实现 LeetCode 93 复原IP地址
		
93. 复原IP地址 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 示例: 输入: "25525511135" 输出: ["255.255.11. ...
 - LeetCode(93): 复原IP地址
		
Medium! 题目描述: 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 示例: 输入: "25525511135" 输出: ["255.255. ...
 - leetcode刷题-93复原IP地址
		
题目 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 有效的 IP 地址正好由四个整数(每个整数位于 0 到 255 之间组成),整数之间用 '.' 分隔. 示例: 输入: &q ...
 - leetcode 93 复原IP地址
		
IP地址,分成四段,每段是0-255,按照每段的长度分别为1,2,3下一段长度分别1,2,3再下一段......进行递归遍历,能满足条件的假如res中.比较难想到的就是假如有一段是三位的010是不符合 ...
 - 第93题:复原IP地址
		
一. 问题描述 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 示例: 输入: "25525511135" 输出: ["255.255.11.135 ...
 - [LeetCode]1108. IP 地址无效化
		
给你一个有效的 IPv4 地址 address,返回这个 IP 地址的无效化版本. 所谓无效化 IP 地址,其实就是用 "[.]" 代替了每个 ".". 示例 ...
 
随机推荐
- 买条Vineyard Vines裙子为啥子那么难?因为能遮胖?因为英国王子穿过?
			
为了这件vineyard vines, 我周六冒雨,去斯坦福shopping center说卖完了,我冒雨赶回家,上网买到了,今天早上发email说没货了,自动取消我的订单.我下午又打了40分钟电话给 ...
 - 搞懂String、StringBuffer、StringBuilder的区别
			
String.StringBuffer.StringBuilder有什么区别呢? 1.String: 首先String是不可变的这是家喻户晓的,它的底层是用一个final修饰的char数组来保存数据的 ...
 - Eclipse 动态添加web.xml
			
在创建javaweb项目时,也许会忘记让项目创建web.xml文件,这是我们可以右键创建后的项目,在javaEE Tools中选择第二个即可. Generate deployment Descript ...
 - html与css注意事项及小知识点
			
html 常用的html特殊符号: 空格:&npsd: 版权所有符号:©: 注册商标符号:®: 有两个标签容器:<span>和<div> ...
 - SpringBoot实现定时器定时处理任务
			
最近在项目中遇到了一个问题, 对于新建的活动, 活动设置了开始时间和结束时间, 也就是数据库中的一个状态码的改变而已. 但是,这里就有问题了, 如何去实现到时间更改活动状态呢? 1. 刚开始的时候,我 ...
 - WinPE基础知识之导入表
			
// 导入表 (结构体数组,以一个全零元素为结尾,每一个数组元素,代表一个PE文件导入信息) // 导入表存储的是从其它PE文件导入过来的函数名.序号,加载到内存之后,还存储这些函数的地址 typed ...
 - Mysql与java对应的类型表
			
1. 概述 在使用Java JDBC时,你是否有过这样的疑问:MySQL里的数据类型到底该选择哪种Java类型与之对应?本篇将为你揭开这个答案. 2. 类型映射 java.sql.Types定义了常 ...
 - Django restfulframework 开发相关知识 整理
			
目录 目录 前言 前后端分离 实现前后端分离的方法 前后端分离带来的优点 RESTful十大规范 协议规范 域名规范 版本表示规范 url使用名词 http请求动词 过滤条件 状态码 错误信息 请求方 ...
 - Delphi 类的方法
 - Apache版本兼容性问题
			
Apache 版本2.2.31 版本对于谷歌浏览器不兼容.IE8版本可以正常使用 当使用了Apache 高版本的话就解决了 出现以下现象