代码随想录算法训练营第二十八天 | 93.复原IP地址、78.子集、90.子集II

93.复原IP地址 

题目链接/文章讲解:代码随想录

视频讲解:回溯算法如何分割字符串并判断是合法IP?| LeetCode:93.复原IP地址_哔哩哔哩_bilibili

(1)代码

代码随想录算法训练营第二十八天 | 93.复原IP地址、78.子集、90.子集II_第1张图片

代码随想录算法训练营第二十八天 | 93.复原IP地址、78.子集、90.子集II_第2张图片

78.子集

题目链接/文章讲解:代码随想录

视频讲解:回溯算法解决子集问题,树上节点都是目标集和! | LeetCode:78.子集_哔哩哔哩_bilibili

(1)代码

----子集问题就是不止在叶子节点收集结果,而是在每个节点都收集结果。所以只需要在一开始的终止条件中去掉相应判断条件即可。

代码随想录算法训练营第二十八天 | 93.复原IP地址、78.子集、90.子集II_第3张图片

90.子集II   --去重+used数组+排序

题目链接/文章讲解:代码随想录

视频讲解:回溯算法解决子集问题,如何去重?| LeetCode:90.子集II_哔哩哔哩_bilibili

(1)代码

代码随想录算法训练营第二十八天 | 93.复原IP地址、78.子集、90.子集II_第4张图片

其他补充

1. s=s.substring(0,i+1)+'.'+s.substring(i+1); //加逗点

     s=s.substring(0,i+1)+s.substring(i+2);  //删除逗点

2. if(s.charAt(i)>'9' || s.charAt(i)<'0'){return false;} //判断是否是数字(除了0-9的数字外)

你可能感兴趣的:(回溯,算法)