回溯模板:
1、终止条件、处理节点和撤销处理都需根据实际情况判断
2、定义全局变量存放结果、路径
3、for循环的宽度是遍历集和区间的宽度(横向)、递归纵向遍历(深度,终止条件与其相关)
4、写for循环和对节点的处理的时候,只考虑横向(例如131题的字符串切割,切1、2、3),横向考虑完了,再考虑递归的条件。


递归:
看自己递归终止时,能返回什么(比如查询到底了,是直接return 还是到叶子节点时能够返回一个list之类的 还是要分析题目需求),再确定递归函数的返回类型
本文探讨了回溯法中的关键要素,包括终止条件、处理节点、撤销操作,以及如何利用全局变量管理路径。在for循环中关注横向遍历,如字符串切割问题,然后结合递归处理深度。递归时,应根据终止条件决定返回值类型,可能是单一值或列表,这取决于题目需求。
回溯模板:
1、终止条件、处理节点和撤销处理都需根据实际情况判断
2、定义全局变量存放结果、路径
3、for循环的宽度是遍历集和区间的宽度(横向)、递归纵向遍历(深度,终止条件与其相关)
4、写for循环和对节点的处理的时候,只考虑横向(例如131题的字符串切割,切1、2、3),横向考虑完了,再考虑递归的条件。


递归:
看自己递归终止时,能返回什么(比如查询到底了,是直接return 还是到叶子节点时能够返回一个list之类的 还是要分析题目需求),再确定递归函数的返回类型
1392
270

被折叠的 条评论
为什么被折叠?