import java.util.ArrayList;publicclassTest{publicstaticvoidmain(String[] args){}}classSolution{/**
* @param s string字符串
* @return string字符串ArrayList
*/public ArrayList<String>restoreIpAddresses(String s){char[] chars = s.toCharArray();int n = chars.length;
ArrayList<String> res =newArrayList<>();
ArrayList<Integer> list =newArrayList<>();backtrack(s,0, n, res, list);return res;}publicvoidbacktrack(String s,int index,int n, ArrayList<String> res, ArrayList<Integer> list){if(index == n && list.size()==4){
res.add(list.get(0)+"."+ list.get(1)+"."+ list.get(2)+"."+ list.get(3));return;}for(int i = index; i < index +3&& i < n; i++){if(index +(4- list.size())*3< n){return;}if(index +4- list.size()> n){return;}int num = Integer.parseInt(s.substring(index, i +1));if(num <=255){
list.add(num);backtrack(s, i +1, n, res, list);
list.remove(list.size()-1);}if(num ==0){break;}}}}