Restore IP Addresses
来源:互联网 发布:搭建apache服务器性能 编辑:程序博客网 时间:2024/06/03 15:06
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: vector<string> restoreIpAddresses(string s) { vector<string> ips=restoreIpAddresses(s,4);//常规ip表示法有4个ip段 return ips; }private: vector<string> restoreIpAddresses(string s,int restSegment) { vector<string> ips; if(restSegment == 1){//最后一个ip段 if(isIpSegment(s)){ ips.push_back(s); } return ips; } int len = s.size(); for(int i=0;i<3 ;++i){//每个ip段最多3位 string first = s.substr(0,i+1); if(isIpSegment(first)){ if(i+1 < len){ vector<string> rest = restoreIpAddresses(s.substr(i+1,len-i-1),restSegment-1); for(int j=0;j<rest.size();++j){ ips.push_back(first+"."+rest[j]); } } } } return ips; } bool isIpSegment(string s){//判断一个段是否满足ip地址的要求 int intValue=atoi(s.c_str());bool inScole = (intValue>=0 && intValue<=255);if(!inScole) return false;int len = s.size();if(len>1 && s[0]=='0') return false;return true; }};
0 0
- LeetCode: Restore IP Addresses
- Restore IP Addresses
- LeetCode : Restore IP Addresses
- [LeetCode] Restore IP Addresses
- Restore IP Addresses
- [LeetCode]Restore IP Addresses
- Restore IP Addresses
- Restore IP Addresses
- LeetCode:Restore IP Addresses
- Restore IP Addresses
- Restore IP Addresses
- LeetCode Restore IP Addresses
- [leetcode] Restore IP Addresses
- Restore IP Addresses
- LeetCode:Restore IP Addresses
- [LeetCode] Restore IP Addresses
- LeetCode - Restore IP Addresses
- LeetCode | Restore IP Addresses
- 第15周总结
- Android事件分发机制完全解析,带你从源码的角度彻底理解(上)
- JSON for java入门总结
- 《Machine Learning(Tom M. Mitchell)》读书笔记——13、第十二章
- 学生信息链表实现
- Restore IP Addresses
- C++中虚继承下派生类object布局
- 【安卓笔记】滑动删除示例
- 在centos安装ncftp
- 打电话就赚钱 加值电话合作 声讯电话
- LCA倍增法
- 25. Dubbo原理解析-telnet
- const iterator 和 const_iterator 的区别
- LeetCode Unique Paths