随着学习的不断深入和对DFS,BFS的使用熟练,对这两种算法的思路有了更清晰的认识,现在使用这个模板感觉更灵活一些。
DFS
void dfs(状态A)
{
if(A不合法)
return;
if(A为目标状态)
输出或记录路径
if(A不为目标状态)
dfs(A+Δ )
} BFS
q.push(head);
while(!q.empty())
{
temp=q.front();
q.pop();
if(tempÎ为目标状态)
输出或记录
if(temp不合法 )
continue;
if(temp合法)
q.push(temp+¦Δ );
}
本文深入探讨了深度优先搜索(DFS)与广度优先搜索(BFS)两种经典图遍历算法。通过具体实现模板介绍了如何使用这些算法解决实际问题,并提供了清晰的递归与迭代实现方式。
1681

被折叠的 条评论
为什么被折叠?



