当前位置: 首页 > news >正文

深搜广搜(DFS、BFS)

DFS:广度优先搜索

DFS所使用的数据结构为栈,每次都需要遍历到最底层,无法遍历后回溯到上一层,然后寻找其他分支,直到所有分支都遍历后,再回溯上一层。以此循环。BFS需要记录从开始到结束结点的元素值,以树为例,需要记录根节点到某一叶子结点的元素值,故需要的空间大小为O(h)

BFS:深度优先搜索

BFS所使用的数据结构为队列,每次会将已经搜索过的结点的所有分支全部搜索一遍,以树为例:BFS会从根节点开始,一层一层的遍历所有结点,由于需要记录所有结点,故需要的空间大小为O(2 h次方)

由于BFS是一层一层的进行扩展的,所以BFS第一次搜到的某个点就是最短距离能搜到的这个点。故可以用BFS来计算最短距离。但DFS不可以用来计算最短距离。

http://www.hskmm.com/?act=detail&tid=10819

相关文章:

  • android studio发现设备立刻就掉
  • 见证语音领域 GPT-3 时刻!小米开源端到端语音模型 MiMo Audio;Xbox上线游戏助手,实时游戏理解+语音交互丨日报
  • go语言学习之基本数据类型转字符串
  • DeepLearning-LoRA 及其先进变体技术指南
  • 成功没有奇迹,只有积累----Bruce Lee
  • strtol() 函数 - 字符串转长整数(long int)
  • TypeScript学习
  • 对Transformer的个人理解
  • 第二节中央处理单元CPU知识点
  • day08 课程
  • 最小生成树MST-07 - jack
  • Java基础语法1
  • 不定高元素动画实现方案(上)
  • 实用指南:【鸿蒙面试题-6】LazyForEach 懒加载
  • 0voice-2.1.2-事件驱动reactor的原理与实现
  • Python 潮流周刊#120:新型 Python 类型检查器对比(摘要)
  • 精选HTML、JavaScript、ASP代码片段集锦
  • 线下活动丨RTE 开发者社区S 创上海 2025:9 家社区项目、3 场圆桌、1 场演讲、1 场派对、1 个彩蛋
  • 使用SCP命令在CentOS 7上向目标服务器传输文件
  • 简单来讲讲C#中的锁
  • 使用BigDecimal类进行精确的加、减、乘、除操作,并比较BigDecimal数组元素大小
  • mysql去除空格,可以使用的函数
  • 安装k8s的控制平面脚本
  • MyBatis Mapper中使用limit参数的查询问题
  • Capacitor 打包后接口访问不到的排查经历 - 指南
  • Kubernetes 工作节点的安装脚本
  • updateByPrimaryKeySelective()方法因字段为null导致的更新不成功问题解决办法
  • 股探报告
  • LLVM/Clang Out-of-Tree开发
  • 基于LlamaIndex的相似性搜索