图的【广度优先】与【深度优先】遍历
本文内容主要学习自视频 link
BFS与DFS
BFS
(Breadth First Search) 是指从任意起始点开始,一层一层地向外搜索,即从起始点开始,先搜索到与其相距为1的节点,然后再搜索到与其相距为2的点,以此类推。这种搜索方法不仅能【遍历图】,还能求2个节点之间的【最短路径】。
上图BFS遍历顺序为:A–>B–>C–>D–>E–>F
DFS
(Depth First Search) 是指从任意起始点开始,一条路走到头,直到无路可走后,退一格寻找路径,直至退回起始点。
上图DFS遍历顺序为:A–>B–>D–>F–>E–>C
怎样定义图
可用字典的方式,以节点为键,与其相邻节点列表为值
graph = {
"A": ["B", "C"],
"B": ["A", "C", "D"],
"C": ["A", "B", "D", "E"],
"D": ["B", "C", "E",