回溯算法就是一种蛇皮算法,由于自己太菜,这里只讨论搜索中的回溯。
一般回溯搜索都在递归中实现。即在递归一开始对某些东西进行标记,而返回上一层时再把这些东西标记回去。
假代码
这里用一个最简单的dfs来介绍
inline void find(int x,int y){
f[x][y] = 0;//标记
//干一些事情
f[x][y] = 1;//假装自己没有来过
}
回溯算法就是一种蛇皮算法,由于自己太菜,这里只讨论搜索中的回溯。
一般回溯搜索都在递归中实现。即在递归一开始对某些东西进行标记,而返回上一层时再把这些东西标记回去。
这里用一个最简单的dfs来介绍
inline void find(int x,int y){
f[x][y] = 0;//标记
//干一些事情
f[x][y] = 1;//假装自己没有来过
}