93. 复原 IP 地址
难度中等569
给定一个只包含数字的字符串,用以表示一个 IP 地址,返回所有可能从 s
获得的 有效 IP 地址 。你可以按任何顺序返回答案。
有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0
),整数之间用 '.'
分隔。
例如:”0.1.2.201” 和 “192.168.1.1” 是 有效 IP 地址,但是 “0.011.255.245”、”192.168.1.312” 和 “192.168@1.1“ 是 无效 IP 地址。
示例 1:
1 | 输入:s = "25525511135" |
示例 2:
1 | 输入:s = "0000" |
示例 3:
1 | 输入:s = "1111" |
示例 4:
1 | 输入:s = "010010" |
示例 5:
1 | 输入:s = "101023" |
提示:
0 <= s.length <= 3000
s
仅由数字组成
回溯
关键点:
- 注意不能含有前导0
- 每一个域的值不能大于255
- 中间点的数量应该是三
- StringBuilder到最后赋值的时候不能删除字符,否则返回上一层回溯的过程就不正确了
1 | class Solution { |