zoukankan      html  css  js  c++  java
  • leetcode[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)

    class Solution {
    public:
    bool valid(string num)
    {
        if(num.size()==1)return (num>="0"&&num<="9");
        if(num.size()==2)return (num>="10"&&num<="99");
        if(num.size()==3)return (num>="100"&&num<="255");
        return false;
    }
    void find(vector<string> &res, vector<string> &ips, int kth, int begin,string &s)
    {
        if (begin==s.size())
        {
            if(kth==5)
            {
                string tmp=ips[0];
                for (int i=1;i<ips.size();i++)
                {
                    tmp+=('.'+ips[i]);
                }
                res.push_back(tmp);
                return;
            }
            return;
        }
        for (int k=1;k<4&&(begin+k-1<s.size());k++)
        {
            string ip=s.substr(begin,k);
            if (valid(ip))
            {
                ips.push_back(ip);
                find(res,ips,kth+1,begin+k,s);
                ips.pop_back();
            }
        }
        return;
    }
    vector<string> restoreIpAddresses(string s)
    {
        vector<string> res;
        if(s.size()<4||s.size()>12)return res;
        vector<string> ips;
        find(res, ips, 1, 0,s);
        return res;
    }
    };
  • 相关阅读:
    Java 的 多态和构造方法
    java 的 抽象类、接口
    java 的 封装 、继承
    eclipse的安装和基本使用、面向对象、类和对象
    方法的重载、引用数据类型、 ArrayList集合
    SQL单行函数
    JAVA
    mysql约束
    MYSQL的常用属性
    mysql的索引
  • 原文地址:https://www.cnblogs.com/Vae1990Silence/p/4281387.html
Copyright © 2011-2022 走看看