算法--搜索与图

这里写目录标题

主要内容

DFS

思想

会优先向深处搜索 一旦到达最深处 那么会回溯 但是在回溯的过程中 会边回溯边观察是否有能继续深入的点 如果有 那么继续深入搜 直到他确认该点深处都被搜过了 才会放过这个点 继续回溯

就是按照一颗树的顺序 并且以深度优先的顺序来存放数据

但是我们不需要新建一颗树 而是存放每一次搜索的路径 并且也需要自己写一个栈 系统会有一个隐性栈 帮我们维护栈

同时回溯的时候 要恢复现场 恢复搜索前的现场 如下图

从1 2 _ 回溯时

要恢复到1 _ _ 的样子

BFS

思想

BFS会一层一层查找 他会确保当前层都搜完了 再去搜索下一层

DFS与BFS的比较

DFS空间较小 但是BFS具有最短路性质

之所以DFS没有最短路 如上 加入加一条边 那么要搜索到左下角那个点的话 DFS可能返回的路径是3步 但是最短的是2步 所以不具有最短路性质

但是换做BFS 按层查找 那么肯定会先从最外面那条边搜到目标点

一级目录

二级目录

二级目录

二级目录

一级目录

二级目录

二级目录

二级目录

一级目录

二级目录

二级目录

二级目录

相关推荐
不爱写代码的玉子2 分钟前
HALCON透视矩阵
人工智能·深度学习·线性代数·算法·计算机视觉·矩阵·c#
Java 技术轻分享8 分钟前
《树数据结构解析:核心概念、类型特性、应用场景及选择策略》
数据结构·算法·二叉树··都差速
芜湖xin33 分钟前
【题解-洛谷】P1706 全排列问题
算法·dfs
曦月逸霜2 小时前
第34次CCF-CSP认证真题解析(目标300分做法)
数据结构·c++·算法
海的诗篇_3 小时前
移除元素-JavaScript【算法学习day.04】
javascript·学习·算法
自动驾驶小卡3 小时前
A*算法实现原理以及实现步骤(C++)
算法
Unpredictable2223 小时前
【VINS-Mono算法深度解析:边缘化策略、初始化与关键技术】
c++·笔记·算法·ubuntu·计算机视觉
编程绿豆侠3 小时前
力扣HOT100之多维动态规划:1143. 最长公共子序列
算法·leetcode·动态规划
珂朵莉MM3 小时前
2021 RoboCom 世界机器人开发者大赛-高职组(初赛)解题报告 | 珂学家
java·开发语言·人工智能·算法·职场和发展·机器人