dfs基础

dfs—深度优先搜索(以《啊哈算法》一书中的为例)
dfs可以看作一种宏观的以回溯法为基础的搜索方式,只需保证前几步(甚至只要思路正确)正确,就能保证整个dfs的正确性。模板:

void dfs(...){
    if(...){
        ...
        return; 
    } //通常为判断终止条件与越界条件
    for(...){//为了遍历所有的可能 
        note[...] = 1; //有些要用到标记 
        dfs(...+1);//通常需要算路径需要更新值
        note[...] = 0;//记得解除标记 
    }
    return; 
} 

你可能感兴趣的:(dfs基础)