mirror of
https://github.com/krahets/hello-algo.git
synced 2026-04-13 13:19:46 +08:00
build
This commit is contained in:
@@ -10,11 +10,11 @@ comments: true
|
||||
|
||||
例如,输入集合 $\{3, 4, 5\}$ 和目标整数 $9$ ,由于集合中的数字可以被重复选取,因此解为 $\{3, 3, 3\}, \{4, 5\}$ 。请注意,子集是不区分元素顺序的,例如 $\{4, 5\}$ 和 $\{5, 4\}$ 是同一个子集。
|
||||
|
||||
## 12.3.1. 参考全排列解法
|
||||
## 12.3.1. 从全排列引出解法
|
||||
|
||||
从回溯算法的角度看,我们可以把子集的生成过程想象成一系列选择的结果,并在选择过程中实时更新“元素和”,当元素和等于 `target` 时,就将子集记录至结果列表。
|
||||
类似于上节全排列问题的解法,我们可以把子集的生成过程想象成一系列选择的结果,并在选择过程中实时更新“元素和”,当元素和等于 `target` 时,就将子集记录至结果列表。
|
||||
|
||||
与上节全排列问题不同的是,本题允许重复选取同一元素,因此无需借助 `selected` 布尔列表来记录元素是否已被选择。我们可以对全排列代码进行小幅修改,初步得到解题代码。
|
||||
而与全排列问题不同的是,本题允许重复选取同一元素,因此无需借助 `selected` 布尔列表来记录元素是否已被选择。我们可以对全排列代码进行小幅修改,初步得到解题代码。
|
||||
|
||||
=== "Java"
|
||||
|
||||
@@ -396,7 +396,7 @@ comments: true
|
||||
|
||||
<p align="center"> Fig. 子集和 I 回溯过程 </p>
|
||||
|
||||
## 12.3.3. 考虑相等元素
|
||||
## 12.3.3. 相等元素剪枝
|
||||
|
||||
!!! question
|
||||
|
||||
|
||||
Reference in New Issue
Block a user