题目描述

给定一个只包含数字的字符串,复原它并返回所有可能的 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地址(探索字节跳动)的更多相关文章

  1. LeetCode 简化路径(探索字节跳动)

    题目描述 给定一个文档 (Unix-style) 的完全路径,请进行路径简化. 例如, path = "/home/", => "/home" path ...

  2. [LeetCode] Restore IP Addresses 复原IP地址

    Given a string containing only digits, restore it by returning all possible valid IP address combina ...

  3. LeetCode:复原IP地址【93】

    LeetCode:复原IP地址[93] 题目描述 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 示例: 输入: "25525511135" 输出: [&qu ...

  4. Java实现 LeetCode 93 复原IP地址

    93. 复原IP地址 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 示例: 输入: "25525511135" 输出: ["255.255.11. ...

  5. LeetCode(93): 复原IP地址

    Medium! 题目描述: 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 示例: 输入: "25525511135" 输出: ["255.255. ...

  6. leetcode刷题-93复原IP地址

    题目 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 有效的 IP 地址正好由四个整数(每个整数位于 0 到 255 之间组成),整数之间用 '.' 分隔. 示例: 输入: &q ...

  7. leetcode 93 复原IP地址

    IP地址,分成四段,每段是0-255,按照每段的长度分别为1,2,3下一段长度分别1,2,3再下一段......进行递归遍历,能满足条件的假如res中.比较难想到的就是假如有一段是三位的010是不符合 ...

  8. 第93题:复原IP地址

    一. 问题描述 给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式. 示例: 输入: "25525511135" 输出: ["255.255.11.135 ...

  9. [LeetCode]1108. IP 地址无效化

    给你一个有效的 IPv4 地址 address,返回这个 IP 地址的无效化版本. 所谓无效化 IP 地址,其实就是用 "[.]" 代替了每个 ".". 示例 ...

随机推荐

  1. 启动tomcat提示某个端口被占用

    原文参见:https://www.cnblogs.com/liuyanxia/p/6755520.html 解决办法 找出占用1099端口的进程,进入windows命令,查看什么进程占用了1099端口 ...

  2. 7.Spring整合Hibernate_1

    Spring 整合 Hibernate 1.Spring指定 database,给下面创建的 SessionFactory用 <!-- !!!!!可以使用 @Resource 将 这个bean对 ...

  3. ngnix反向代理后获取用户真实ip及https配置

    server {listen 80;listen 802;server_name test111.xxxx.com 118.24.122.101; gzip on;gzip_min_length 10 ...

  4. python实现IP地址转换为32位二进制

    python实现IP地址转换为32位二进制 #!/usr/bin/env python # -*- coding:utf-8 -*- class IpAddrConverter(object): de ...

  5. kubernetes之健康状态检测

    1.说明 容器探针: kubelet 对容器执行的定期诊断 探针执行方式: LivenessProbe: 判断容器是否存活 running状态, 如果不健康kubelet就会杀掉pod,根据重启策略R ...

  6. thymeleaf的内联th:inline(在javascript访问model中的数据)

    thymeleaf模板引擎为前端数据的获取提供了较大的便利,在html标签内可通过th标签加${}表达式访问model里的对象数据.但如果不想通过th标签而是简单地访问model对象数据,或是想在ja ...

  7. HashMap源码分析一

           HashMap在java编程中,算使用频率top10中的类了.这里是关于HashMap的源码的分析.一个类的源码分析,要看他的来龙去脉,他的历史迭代.一来从以前的版本开始分析,由易到难: ...

  8. jquery 去除 css 的 background-image 样式

    首先我使用了这个: $('#**').css('background-image', null); 没有效果...... 然后我用了这个: $('#staffName').css('backgroun ...

  9. CSP-S2019 退役记/赛后总结

    真就退役了呗. 作为一名非常失败的OIer,开了一个非常失败的blog,一直想在赛后写点什么,做点什么,总结些什么.自csp结束以来,徘徊了半个月,今夜里终于还是起笔了. 因为从来没写过这种玩意,不妨 ...

  10. tar命令--数据解档(三)解压.tar.gz文件报错 gzip:stdin:not in gzip format

    毕竟是生产..... 提示以下信息:  gzip: stdin: not in gzip format  tar: Child returned status 1  tar: Error is not ...