您的位置:首页 > 其它

关于使用DFS,BFS的一些思考总结

2017-03-01 15:04 483 查看
总的来说,DFS和BFS是一种遍历策略,整体运行的框架是固定的,但是具体处理以及函数的形参是需要根据具体问题具体来定的。

也就是说,在BFS或者DFS的时候,首先需要搞明白的是:遍历的目的是什么。

标记结点已经访问(任何题目中必须有)

遍历过程中计算参数(选择)

计算参数是比较常见的题目,只标记结点是否访问在计算连通块个数时总结过。

详细说一下计算参数问题。

可以在形参中用参数引用,直接改变这个参数就等同于计算,因为外面可以感受到变化,DFS用的较多,因为DFS是递归处理。

或者定义全局变量,函数运行直接改变,这个才BFS更多用,因为BFS是循环处理。

DFS用起来仍然需要从递归函数的写法上多加注意,即注意:

递归边界

当前层的逻辑处理

递归式的写法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  bfs dfs 遍历