![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
回溯算法
回溯算法
龙崎流河
沉淀
展开
-
491.递增子序列 46.全排列 47.全排列 II
同一父节点下的同层上使用过的元素就不能再使用了。原创 2023-02-12 14:21:28 · 66 阅读 · 0 评论 -
93.复原IP地址 78.子集 90.子集II
【代码】93.复原IP地址 78.子集 90.子集II。原创 2023-02-11 13:02:06 · 65 阅读 · 0 评论 -
39. 组合总和 40.组合总和II 131.分割回文串
如果candidates[i] == candidates[i - 1] 并且 used[i - 1] == false,就说明:前一个树枝,使用了candidates[i - 1],也就是说同一树层使用过candidates[i - 1]。此时for循环里就应该做continue的操作。原创 2023-02-10 13:54:51 · 65 阅读 · 0 评论 -
216.组合总和III 17.电话号码的字母组合
【代码】216.组合总和III 17.电话号码的字母组合。原创 2023-02-08 14:08:41 · 74 阅读 · 0 评论 -
第77题. 组合
组合问题是回溯法解决的经典问题,我们开始的时候给大家列举一个很形象的例子,就是n为100,k为50的话,直接想法就需要50层for循环。然后进一步把回溯法的搜索过程抽象为树形结构,可以直观的看出搜索的过程。举个例子,n = 4,k = 3, 目前已经选取的元素为0(path.size为0),n - (k - 0) + 1 即 4 - ( 3 - 0) + 1 = 2。在集合n中至多要从该起始位置 : n - (k - path.size()) + 1,开始遍历。已经选择的元素个数:path.size();原创 2023-02-07 14:42:52 · 78 阅读 · 0 评论