关于dfs

dfs基本套路

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

if(如果不越界且合法)  

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

}

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

posted @ 2020-11-22 10:42  py佐料  阅读(84)  评论(0编辑  收藏  举报