Leetcode题解(2):L93/Restore IP Addresses

L93: Restore IP Addresses

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

For example:

Given “25525511135”,

return [“255.255.11.135”, “255.255.111.35”]. (Order does not matter)

解题思路:数据量不大,直接三重循环解决,也可以用DFS解决,差不多

class Solution {
public:
    bool isIpNum(string I)
    {
        if(I[0] == ‘0‘ && I.length() != 1)
            return false;
        int num = std::stoi(I);
        if(num >= 0 && num <= 255)
            return true;
        return false;
    }

    vector<string> restoreIpAddresses(string s) {
        vector<string> result;
        int len=s.length();

        if(len<4||len>12)
            return result;  //肯定不满足,直接返回

        string I1,I2,I3,I4;
        //三重循环
        for(int j=1;j<len-2;j++)
        {
            for(int k=j+1;k<len-1;k++)
            {
                for(int t=k+1;t<len;t++)
                {
                    I1 = s.substr(0,j);
                    I2 = s.substr(j,k-j);
                    I3 = s.substr(k,t-k);
                    I4 = s.substr(t,len-k);
                    if(isIpNum(I1)&&isIpNum(I2)&&isIpNum(I3)&&isIpNum(I4))
                    {
                        string IP;
                        IP = I1+"."+I2+"."+I3+"."+I4;
                        result.push_back(IP);
                    }
                }
            }
        }
        return result;
    }
};
时间: 2024-10-12 03:48:33

Leetcode题解(2):L93/Restore IP Addresses的相关文章

LeetCode之“字符串”:Restore IP Addresses

题目链接 题目要求: Given a string containing only digits, restore it by returning all possible valid IP address combinations. For example: Given "25525511135", return ["255.255.11.135", "255.255.111.35"]. (Order does not matter) 本题的解

【leetcode刷题笔记】Restore IP Addresses

Given a string containing only digits, restore it by returning all possible valid IP address combinations. For example:Given "25525511135", return ["255.255.11.135", "255.255.111.35"]. (Order does not matter) 题解:深度优先搜索.用resul

Restore IP Addresses leetcode java

题目: Given a string containing only digits, restore it by returning all possible valid IP address combinations. For example: Given "25525511135", return ["255.255.11.135", "255.255.111.35"]. (Order does not matter) 题解: 利用循环递归解

leetcode -day29 Binary Tree Inorder Traversal &amp; Restore IP Addresses

1.  Binary Tree Inorder Traversal Given a binary tree, return the inorder traversal of its nodes' values. For example: Given binary tree {1,#,2,3}, 1 2 / 3 return [1,3,2]. Note: Recursive solution is trivial, could you do it iteratively? 分析:求二叉树的中序

[LeetCode]Restore IP Addresses

题目:Restore IP Addresses 将数字串转换成合法的IP地址,返回所有可能的情况. 思路: 移动3个地址分隔符".",将地址换分成四份,检查是否合法: 注意不能有0开头的地址段(它是非法的),且不用将开头的0去掉. 中间的点从第一个点的后面开始向尾部移动,当第一个点与第二个点的距离大于3时,第一个点向后移动一步,第二个点还原到当前第一个点的后面: 当第一个点移动到最后一个点的前2个位置,则,最后一个点向前移动一步,第一个点和第二个点还原: 最后一个点到串尾距离大于3则退

LeetCode: Restore IP Addresses [093]

[题目] Given a string containing only digits, restore it by returning all possible valid IP address combinations. For example: Given "25525511135", return ["255.255.11.135", "255.255.111.35"]. (Order does not matter) [题意] 给定一个字

【leetcode】Restore IP Addresses

Restore IP Addresses Given a string containing only digits, restore it by returning all possible valid IP address combinations. For example:Given "25525511135", return ["255.255.11.135", "255.255.111.35"]. (Order does not mat

【LeetCode】93. Restore IP Addresses 【面试题】

Restore IP Addresses Given a string containing only digits, restore it by returning all possible valid IP address combinations. For example:Given "25525511135", return ["255.255.11.135", "255.255.111.35"]. (Order does not mat

93. Restore IP Addresses

Given a string containing only digits, restore it by returning all possible valid IP address combinations. For example: Given "25525511135", return ["255.255.11.135", "255.255.111.35"]. (Order does not matter) 什么时候临时容器符合题意加入结