93. 复原 IP 地址 - 力扣(LeetCode)

这篇具有很好参考价值的文章主要介绍了93. 复原 IP 地址 - 力扣(LeetCode)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

题目描述
有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 ‘.’ 分隔。

例如:“0.1.2.201” 和 “192.168.1.1” 是 有效 IP 地址,但是 “0.011.255.245”、“192.168.1.312” 和 “192.168@1.1” 是 无效 IP 地址。
给定一个只包含数字的字符串 s ,用以表示一个 IP 地址,返回所有可能的有效 IP 地址,这些地址可以通过在 s 中插入 ‘.’ 来形成。你 不能 重新排序或删除 s 中的任何数字。你可以按 任何 顺序返回答案。

输入示例

s = "25525511135"

输出示例

["255.255.11.135","255.255.111.35"]

解题思路
93. 复原 IP 地址 - 力扣(LeetCode),tcp/ip,leetcode,网络协议

解题代码文章来源地址https://www.toymoban.com/news/detail-817662.html

class Solution {
    List<String> result = new ArrayList<>();
    public List<String> restoreIpAddresses(String s) {
        StringBuffer path = new StringBuffer(s);
        backtrack(path, 0, 0);
        return result;
    }

    public void backtrack(StringBuffer s, int begin, int pointSum) {
        if(pointSum == 3) {
            if(isValid(s, begin, s.length() - 1)) {
                result.add(s.toString());
                return;
            }
        }
        for(int i = begin; i < s.length(); i++) {
            if(isValid(s, begin, i)) {
                s.insert(i+1, '.');
                pointSum += 1;
                backtrack(s, i+2, pointSum);
                pointSum -= 1;
                s.deleteCharAt(i+1);
            }
        }
    }

    public boolean isValid(StringBuffer s, int start, int end) {
        if(start > end) {
            return false;
        }
        if(s.charAt(start) == '0' && start != end) {
            return false;
        }
        int num = 0;
        for(int i = start; i <= end; i++) {
            if(s.charAt(i) > '9' || s.charAt(i) < '0') {
                return false;
            }
            num = num * 10 + s.charAt(i) - '0';
            if(num > 255) {
                return false;
            }
        }
        return true;
    }
}

到了这里,关于93. 复原 IP 地址 - 力扣(LeetCode)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 力扣 93. 复原 IP 地址

    题目来源:https://leetcode.cn/problems/restore-ip-addresses/description/ C++题解:递归回溯法。 递归参数:因为不能重复分割,需要ind记录下一层递归分割的起始位置;还需要一个变量num,记录ip段的数量。 递归终止条件:ip段的数量达到4 且 ind等于s的长度,可进行有效ip地址保存;当

    2024年02月12日
    浏览(42)
  • 力扣每日一题93:复原IP地址

    有效 IP 地址  正好由四个整数(每个整数位于  0  到  255  之间组成,且不能含有前导  0 ),整数之间用  \\\'.\\\'  分隔。 例如: \\\"0.1.2.201\\\"  和 \\\"192.168.1.1\\\"  是  有效  IP 地址,但是  \\\"0.011.255.245\\\" 、 \\\"192.168.1.312\\\"  和  \\\"192.168@1.1\\\"  是  无效  IP 地址。 给定一个只包含数字的字

    2024年02月06日
    浏览(38)
  • 代码随想录23| 93.复原IP地址, 78.子集, 90.子集II

    题目链接/文章讲解:链接地址 视频讲解:链接地址 题目链接/文章讲解:链接地址 视频讲解:链接地址 题目链接/文章讲解:链接地址 视频讲解:链接地址

    2024年02月11日
    浏览(91)
  • 代码随想录刷题笔记 DAY 28 | 复原 IP 地址 No.93 | 子集 No.78 | 子集 II No.90

    01. 复原 IP 地址(No. 93) 题目链接 代码随想录题解 1.1 题目 有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0 ),整数之间用 \\\'.\\\' 分隔。 例如: \\\"0.1.2.201\\\" 和 \\\"192.168.1.1\\\" 是 有效 IP 地址,但是 \\\"0.011.255.245\\\" 、 \\\"192.168.1.312\\\" 和 \\\"192.168@1.1\\\" 是 无效 I

    2024年02月22日
    浏览(50)
  • 面试热题(复原ip地址)

    有效 IP 地址  正好由四个整数(每个整数位于  0  到  255  之间组成,且不能含有前导  0 ),整数之间用  \\\'.\\\'  分隔。 例如: \\\"0.1.2.201\\\"  和 \\\"192.168.1.1\\\"  是  有效  IP 地址,但是  \\\"0.011.255.245\\\" 、 \\\"192.168.1.312\\\"  和  \\\"192.168@1.1\\\"  是  无效  IP 地址。 给定一个只包含数字的字

    2024年02月11日
    浏览(48)
  • 【网络】- TCP/IP四层(五层)协议 - 网际层(网络层) - IP地址

    上篇文章简单介绍了网际协议IP。网际协议 IP 大致分为三大作用模块, ①IP寻址、 ②路由(最终节点为止的转发) 、③IP分包与组包。 这篇文章主要详细介绍IP地址的基础知识。包括IP地址的组成、分类、广播地址、多播、子网掩码等。 在用 TCP/IP 通信时, 用 IP地址 识别主

    2024年02月06日
    浏览(47)
  • 《TCP/IP网络编程》阅读笔记--域名及网络地址

    目录 1--域名系统 2--域名与 IP 地址的转换 2-1--利用域名来获取 IP 地址 2-2--利用 IP 地址获取域名 3--代码实例 3-1--gethostbyname() 3-2--gethostbyaddr()         域名系统(Domain Name System, DNS )是对 IP 地址和域名进行相互转换 的系统,其核心是 DNS 服务器;         一般来说, IP

    2024年02月09日
    浏览(65)
  • 算法刷题Day 28 复原IP地址+子集+子集II

    我的做法有点奇怪,还是参考一下代码随想录的做法吧 涉及到去重,可别忘了排序 不然去重的效果没法实现

    2024年02月16日
    浏览(42)
  • Rust每日一练(Leetday0031) 解码方法、复原 IP 地址

    目录 91. 解码方法  Decode Ways  🌟🌟 93. 复原 IP 地址 Restore IP Addresses  🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C++每日一练 专栏 Java每日一练 专栏 一条包含字母  A-Z  的消息通过以下映射进行了  编码  : 要  解码  已编码的消息,所有

    2024年02月09日
    浏览(37)
  • 网络原理之TCP-IP地址 & 子网掩码

    鸡汤: 谋事在人,成事在天 社会有很多不是自己能把握的东西,不必给自己太多压力,朝着自己小目标尽力而为;结果或许重要,那也是看自己时运如何了。 概念:连接到Internet中的每一个节点的唯一标识 组成:网络号+主机号 版本: 1、IPv4 (没有特别指定的版本下,通常

    2024年02月05日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包