关于dfs

dfs基本套路

void dfs()//参数用来表示状态  //从功能单元去理解
    {  
        if(到达终点状态)  
        {  
            ...//根据题意添加  
            return;  
        }  
        if(特殊状态)  //剪枝
            return ;

if(如果不越界且合法)  

{
        for(扩展方式)  //搜周围
        {  
            if(扩展方式所达到状态合法)  
            {  
                修改操作;  //根据题意来添加  //从dfs套dfs整体来理解这一步
                标记;  
                dfs();  
                (还原标记);  
                //是否还原标记根据题意  
                //如果加上(还原标记)就是 回溯法  
            }  
        }  

}

return ;  //这里的return可以不放,而把它放在一开始。(详见“找细胞”一题)
    }  

这篇文章,是又一个故事的结束...
lazy's story is continuing.
原文地址:https://www.cnblogs.com/Hello-world-hello-lazy/p/14018550.html