对回溯法的理解
回溯法与dfs很像,区别是:dfs在递归返回时并不会把状态改回历史状态,而回溯法会。
子集和问题的解空间结构和约束函数
子集和问题就是01背包问题,它的解一定是n件物品 每件拿或不拿 的 \(2^{n}\) 种状态中的一种。
当时做那道题的时候只用了一个很简单的约束,即对所有数字从小到大排序,若当前搜索到的节点的值已经大于目标状态,无需搜索剩余子节点。
学习过程中遇到的问题及结对编程的情况
上述的约束函数效率很低,后面了解到了用贪心算法判断分支答案的上界的方法来进行更有效率的剪枝。