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

来源:互联网 发布:倚天现货指标公式源码 编辑:程序博客网 时间:2024/06/09 23:43

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

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

  • 标记结点已经访问(任何题目中必须有)
  • 遍历过程中计算参数(选择)

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

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

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

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

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

  • 递归边界
  • 当前层的逻辑处理
  • 递归式的写法
0 0
原创粉丝点击