给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式。
示例:
输入: “25525511135”
输出: [“255.255.11.135”, “255.255.111.35”]
第一次的代码:
所谓正确的ip地址格式,就是X.X.X.X,4段,每一段都得小于255,但不能随便分,因为可能会导致后面的X大于255.
回溯,每次取1-3个字母,判断若小于255,则继续递归,完毕后,pop()换下一个数字,直到3个数字取完,若遇到0,则0只能出现一次,因此,我们只递归一次便break
def res(s,k,ans,ANS):
if len(ans)==4 :#列表里有4个就返回,大于4 个的一定不对
if k==len(s):
ANS.append('.'.join(ans))#将列表转换成字符串
return