From 9e70fbc5280c8819863984cbb39bab73c96c9514 Mon Sep 17 00:00:00 2001 From: bqlin Date: Sun, 19 Dec 2021 11:54:22 +0800 Subject: [PATCH] =?UTF-8?q?=E2=80=9C=E6=A0=91=E6=94=AF=E2=80=9D=20->=20?= =?UTF-8?q?=E2=80=9D=E6=A0=91=E6=9E=9D=E2=80=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- problems/0040.组合总和II.md | 8 ++++---- problems/0047.全排列II.md | 4 ++-- problems/0090.子集II.md | 2 +- problems/周总结/20201107回溯周末总结.md | 2 +- problems/回溯总结.md | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/problems/0040.组合总和II.md b/problems/0040.组合总和II.md index 31011ed6..14737e31 100644 --- a/problems/0040.组合总和II.md +++ b/problems/0040.组合总和II.md @@ -128,7 +128,7 @@ if (sum == target) { 我在图中将used的变化用橘黄色标注上,可以看出在candidates[i] == candidates[i - 1]相同的情况下: -* used[i - 1] == true,说明同一树支candidates[i - 1]使用过 +* used[i - 1] == true,说明同一树枝candidates[i - 1]使用过 * used[i - 1] == false,说明同一树层candidates[i - 1]使用过 **这块去重的逻辑很抽象,网上搜的题解基本没有能讲清楚的,如果大家之前思考过这个问题或者刷过这道题目,看到这里一定会感觉通透了很多!** @@ -137,7 +137,7 @@ if (sum == target) { ```CPP for (int i = startIndex; i < candidates.size() && sum + candidates[i] <= target; i++) { - // used[i - 1] == true,说明同一树支candidates[i - 1]使用过 + // used[i - 1] == true,说明同一树枝candidates[i - 1]使用过 // used[i - 1] == false,说明同一树层candidates[i - 1]使用过 // 要对同一树层使用过的元素进行跳过 if (i > 0 && candidates[i] == candidates[i - 1] && used[i - 1] == false) { @@ -169,7 +169,7 @@ private: return; } for (int i = startIndex; i < candidates.size() && sum + candidates[i] <= target; i++) { - // used[i - 1] == true,说明同一树支candidates[i - 1]使用过 + // used[i - 1] == true,说明同一树枝candidates[i - 1]使用过 // used[i - 1] == false,说明同一树层candidates[i - 1]使用过 // 要对同一树层使用过的元素进行跳过 if (i > 0 && candidates[i] == candidates[i - 1] && used[i - 1] == false) { @@ -404,7 +404,7 @@ func backtracking(startIndex,sum,target int,candidates,trcak []int,res *[][]int, } if sum>target{return} //回溯 - // used[i - 1] == true,说明同一树支candidates[i - 1]使用过 + // used[i - 1] == true,说明同一树枝candidates[i - 1]使用过 // used[i - 1] == false,说明同一树层candidates[i - 1]使用过 for i:=startIndex;i0&&candidates[i]==candidates[i-1]&&history[i-1]==false{ diff --git a/problems/0047.全排列II.md b/problems/0047.全排列II.md index 6a94d1e0..781f01c3 100644 --- a/problems/0047.全排列II.md +++ b/problems/0047.全排列II.md @@ -65,7 +65,7 @@ private: return; } for (int i = 0; i < nums.size(); i++) { - // used[i - 1] == true,说明同一树支nums[i - 1]使用过 + // used[i - 1] == true,说明同一树枝nums[i - 1]使用过 // used[i - 1] == false,说明同一树层nums[i - 1]使用过 // 如果同一树层nums[i - 1]使用过则直接跳过 if (i > 0 && nums[i] == nums[i - 1] && used[i - 1] == false) { @@ -183,7 +183,7 @@ class Solution { } //如果同⼀树⽀nums[i]没使⽤过开始处理 if (used[i] == false) { - used[i] = true;//标记同⼀树⽀nums[i]使⽤过,防止同一树支重复使用 + used[i] = true;//标记同⼀树⽀nums[i]使⽤过,防止同一树枝重复使用 path.add(nums[i]); backTrack(nums, used); path.remove(path.size() - 1);//回溯,说明同⼀树层nums[i]使⽤过,防止下一树层重复 diff --git a/problems/0090.子集II.md b/problems/0090.子集II.md index 5b92517a..48085a3f 100644 --- a/problems/0090.子集II.md +++ b/problems/0090.子集II.md @@ -55,7 +55,7 @@ private: void backtracking(vector& nums, int startIndex, vector& used) { result.push_back(path); for (int i = startIndex; i < nums.size(); i++) { - // used[i - 1] == true,说明同一树支candidates[i - 1]使用过 + // used[i - 1] == true,说明同一树枝candidates[i - 1]使用过 // used[i - 1] == false,说明同一树层candidates[i - 1]使用过 // 而我们要对同一树层使用过的元素进行跳过 if (i > 0 && nums[i] == nums[i - 1] && used[i - 1] == false) { diff --git a/problems/周总结/20201107回溯周末总结.md b/problems/周总结/20201107回溯周末总结.md index 71bf62de..f9940a2a 100644 --- a/problems/周总结/20201107回溯周末总结.md +++ b/problems/周总结/20201107回溯周末总结.md @@ -50,7 +50,7 @@ for (int i = startIndex; i < candidates.size() && sum + candidates[i] <= target; 我在图中将used的变化用橘黄色标注上,可以看出在candidates[i] == candidates[i - 1]相同的情况下: -* used[i - 1] == true,说明同一树支candidates[i - 1]使用过 +* used[i - 1] == true,说明同一树枝candidates[i - 1]使用过 * used[i - 1] == false,说明同一树层candidates[i - 1]使用过 **这块去重的逻辑很抽象,网上搜的题解基本没有能讲清楚的,如果大家之前思考过这个问题或者刷过这道题目,看到这里一定会感觉通透了很多!** diff --git a/problems/回溯总结.md b/problems/回溯总结.md index b6ca5a86..6365235f 100644 --- a/problems/回溯总结.md +++ b/problems/回溯总结.md @@ -142,7 +142,7 @@ for (int i = startIndex; i < candidates.size() && sum + candidates[i] <= target; 我在图中将used的变化用橘黄色标注上,**可以看出在candidates[i] == candidates[i - 1]相同的情况下:** -* used[i - 1] == true,说明同一树支candidates[i - 1]使用过 +* used[i - 1] == true,说明同一树枝candidates[i - 1]使用过 * used[i - 1] == false,说明同一树层candidates[i - 1]使用过 **这块去重的逻辑很抽象,网上搜的题解基本没有能讲清楚的,如果大家之前思考过这个问题或者刷过这道题目,看到这里一定会感觉通透了很多!**