1--回溯算法理论基础
回溯算法本质上是一个暴力搜索的过程,其常用于解决组合、切割、子集、排列等问题,其一般模板如下:
void backTracking(参数){
if(终止条件){
// 1. 收获结果;
// 2. return;
}
for(..遍历){
// 1. 处理节点
// 2. 递归搜索
// 3. 回溯 // 即撤销对节点的处理
}
return;
}
回溯算法本质上是一个暴力搜索的过程,其常用于解决组合、切割、子集、排列等问题,其一般模板如下:
void backTracking(参数){
if(终止条件){
// 1. 收获结果;
// 2. return;
}
for(..遍历){
// 1. 处理节点
// 2. 递归搜索
// 3. 回溯 // 即撤销对节点的处理
}
return;
}