给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式。

有效的 IP 地址正好由四个整数(每个整数位于 0 到 255 之间组成),整数之间用 ‘.’ 分隔。

示例:

输入: “25525511135”
输出: [“255.255.11.135”, “255.255.111.35”]

暴力

今天这题虽然是中等难度,但是想要做出来并不是很困难,直接暴力枚举三个点就好了,然后判断一些特殊情况。

Code

 def restoreIpAddresses(self, s: str) -> List[str]:ans = []if len(s) > 12:return ansfor i in range(1, len(s)):for j in range(i + 1, len(s)):for k in range(j + 1, len(s)):nums = [s[:i], s[i:j], s[j:k], s[k:]]for item in nums:if not item or (len(item) > 1 and item[0] == '0') or not (0 <= int(item) <= 255):breakelse:ans.append('.'.join(nums))return ans

93. Restore IP Addresses 复原IP地址相关推荐

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

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

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

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

  3. [LeetCode]93.Restore IP Addresses

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

  4. 93. 复原 IP 地址

    93. 复原 IP 地址 有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 '.' 分隔. 例如:"0.1.2.201" ...

  5. 回溯算法——复原IP地址(Leetcode 93)

    题目选自Leetcode 93.复原IP地址 由于我们需要找出所有可能复原出的 IP 地址,因此可以考虑使用回溯的方法,对所有可能的字符串分隔方式进行搜索,并筛选出满足要求的作为答案. 通俗来讲,就是 ...

  6. 【DFS + backtrack】LeetCode 93. Restore IP Addresses

    LeetCode 93. Restore IP Addresses Solution1:我的答案 怎么就这么慢... class Solution { public:vector<string& ...

  7. leetcode系列-93.复原 IP 地址

    leetcode系列–第93题.复原 IP 地址 题目描述:有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 '.' 分隔.例如:" ...

  8. LeetCode 第 93 题:复原IP地址(C++)

    93. 复原IP地址 - 力扣(LeetCode) 最开始的思路是对字符串进行三次切割,每次从左边切一块下来(最多切3位数). 那么我们现在有三个切割点(下标) i, j, k,它们应该满足: n=s ...

  9. leetcode:491. 递增子序列、17. 电话号码的字母组合、31. 分割回文串、93. 复原 IP 地址(JavaScript)

    文章目录 491. 递增子序列 分析 去重 如何保证递增呢? 17. 电话号码的字母组合 思路: 单层递归逻辑 递归终止条件 完整代码 另一种写法 31. 分割回文串 思路:分析题目本题可分为两步 9 ...

最新文章

  1. Windows 给力!可以扔掉 Linux 虚拟机了!
  2. 设计模式之工厂类模式总结对比、简单工厂模式、工厂方法模式、抽象工厂模式、带反射的工厂模式、例子代码分析、最详细
  3. Visual Studio 2008 可扩展性开发(九):总结篇
  4. linux cat EOF 变量自动解析问题
  5. ORACLE SELECT INTO NO_DATA_FOUND问题
  6. 让人深思......
  7. 什么是python语言的动态类型机制_理解Python的Dynamic typing
  8. s5pv210——LCD的原理和实战
  9. 网络编程中的常见陷阱之 0x十六进制数(C++字面值常量)
  10. mybatis 一对一、一对多查询、多对多(使用注解)
  11. Educational Codeforces Round 41 (Rated for Div. 2)
  12. 鲸探APP处罚60余位转售数字藏品用户 | 产业区块链发展周报
  13. VS2010 中修改项目名称
  14. 关于面向过程和面向对象的理解
  15. python获取数据库返回字符串出现/uxxxxxx解决方案
  16. 几款超牛逼的终端命令行工具!好用到爆
  17. 从输入 url 到页面展示到底发生了什么
  18. 【SLAM学习】ORB-SLAM2-大体框架(OpenVSLAM)
  19. 微信小程序 长按图片不出现菜单_HTML5微信长按图片不会弹出菜单的解决方法
  20. IE图标不见了,自定义桌面里面也找不到

热门文章

  1. [图文] Fedora 28 使用 Virt-Manager 创建 KVM 虚拟机以及 配置 KVM 虚拟机
  2. 【腾讯Bugly干货分享】动态链接库加载原理及HotFix方案介绍
  3. Nmap参数--探索网络
  4. 用串口电缆实现双机互联(图)
  5. 关于:以前的某个程序安装已在安装计算机上创建挂起的文件操作解决办法(SQL2000)...
  6. javafx设计自适应大小的窗口_“翅膀”开始流行 宝马坐不住了 开发摩托车自适应空气动力设计...
  7. html页面取js里面的值,如何在javascript中获取HTML元素的样式值?
  8. 天津理工上机c语言报告5,天津理工大学c语言上机报告7.doc
  9. java socket 推送机制_Java中websocket消息推送的实现代码
  10. android 查看gpio状态_GPIO子系统重要概念