import java.util.ArrayList;import java.util.List;publicclassSolution{public List<String>restoreIpAddresses(String s){
ArrayList<String> result =newArrayList<String>();int len = s.length();for(int i =1; i <4&& i < len -2; i++){// 第一层遍历 for(int j = i +1; j < i +4&& j < len -1; j++){// 第二层遍历 for(int k = j +1; k < j +4&& k < len; k++){// 第三层遍历 if(len - k >=4)//判断字符串 是否有剩余continue;// 截取字符串并转换成数字int a = Integer.parseInt(s.substring(0, i));int b = Integer.parseInt(s.substring(i, j));int c = Integer.parseInt(s.substring(j, k));int d = Integer.parseInt(s.substring(k));// 判断数字是否符合IP地址格式if(a >255|| b >255|| c >255|| d >255)continue;
String ip = a +"."+ b +"."+ c +"."+ d;if(ip.length()< len +3)continue;
result.add(ip);}}}return result;}publicstaticvoidmain(String[] args){
Solution s =newSolution();
List<String> res = s.restoreIpAddresses("25525511135");
System.out.println(res);}}