设为首页 加入收藏

TOP

[LeetCode]Restore IP Addresses
2015-07-20 17:23:41 来源: 作者: 【 】 浏览:2
Tags:LeetCode Restore 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)


深搜+回溯+剪枝


public class Solution {
	List
  
    res = new ArrayList
   
    (); List
    
      list = new ArrayList<>(); public List
     
       restoreIpAddresses(String s) { if(s.length()<4||s.length()>12) return res; help(s,list,0); return res; } private void help(String s,List
      
        list,int start){ if((s.length()-start)>(4-list.size())*3) return; if(list.size()==4){ res.add(list.get(0)+"."+list.get(1)+"."+list.get(2)+"."+list.get(3)); } for(int j=1;j<=3&&start+j<=s.length();j++){ String str; if(list.size()==3){ str = s.substring(start); }else{ str = s.substring(start,start+j); } int it = -1; if(!(str.length()>=2&&str.charAt(0)=='0')) it = Integer.parseInt(str); if(it>=0&&it<=255){ list.add(it); help(s,list,start+j); list.remove(list.size()-1); } } } }
      
     
    
   
  


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇poj 2907 Collecting Beepers 邮.. 下一篇uva 1030 Image Is Everything(..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Python 数据分析与可 (2025-12-26 21:51:20)
·从零开始学Python之 (2025-12-26 21:51:17)
·超长干货:Python实 (2025-12-26 21:51:14)
·为什么 Java 社区至 (2025-12-26 21:19:10)
·Java多线程阻塞队列 (2025-12-26 21:19:07)