作者:依喜若_138 | 来源:互联网 | 2023-09-01 09:18
【leetcode-字符串】复原IP地址
题目:
给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式。
示例:
输入: “25525511135”
输出:
[“255.255.11.135”, “255.255.111.35”]
思路:
利用回溯法穷举所有可能的ip地址
java代码:
class Solution {
public List restoreIpAddresses(String s) {
List res = new ArrayList();
dfsRestoreIpAddresses(s, res, 0, 1, new ArrayList());
return res;
}
private void dfsRestoreIpAddresses(String s, List res, int start, int end, ArrayList r) {
if (start s.length() || end s.length() + 1 || r.size() > 4) {
return;
}
if (r.size() == 4 && start == s.length()) {
String rs = "";
for (int i = 0; i s.length() || ends s.length()) {
continue;
}
String juge = s.substring(start, ends);
Integer jugeInt = Integer.valueOf(juge);
if (juge.charAt(0) == '0' && juge.length() > 1) {
continue;
}
if (jugeInt