深度优先搜索dfs
//深度优先搜索dfs:
//INIT type map[maxn][maxn]; bool vst[maxn][maxn];
//MODIFIED:const int maxn=100;
void dfs(int r,int k) {
int i;
if(...){ //到达终点
.... //处理
return;
}
for(i... ){ //逐个遍历子节点
if(!vst[i] && ...){
vst[i]=1;
dfs(...); //将子节点作为父节点深搜
vst[i]=0;
}
}
dfs(r+1,k); //特殊的可能跳过子节点的情况
}
浙公网安备 33010602011771号