回溯算法是通过递归尝试所有可能的解路径,走不通就回退到上一步换路径的暴力枚举策略,核心是尝试-回退,还能通过剪枝减少无效计算。 它的关键特点: 1. 递归驱动:每一层递归对应一个决策选择(如选/不选物品)。 2. 状态回溯:尝试后恢复状态,保证其他路径不受影响。 3. 可选剪枝:提前排除无效路径,优化穷举效率。