Backtracking can be defined as a general algorithmic technique that considers searching every possible combination in order to solve a computational problem.

回溯是将枚举法较为“聪明”地实现的方法,其核心思想还是在于枚举,不过是递归的进行,满足条件则认为是合法结果,不满足则回溯恢复状态进行进一步枚举。
但普通的回溯算法还是不能满足运行时间上的需求,于是我们需要对重复的计算进行剔除,这引入了剪枝(pruning)的概念。

Backtracking | 回溯 - 图2pruning

💡I Love… ADS!