树形的搜索 O(n + m)
DFS深度优先搜索:尽可能向深处搜,搜不到再回溯(执着的人)
BFS广度优先搜索:每次把同层节点全部搜索,再往下搜(稳重的人)
比较: 数据结构 空间 特性
DFS stack O(h) 不具备最短性
BFS queue O(2^h) 是最短路
回溯:当一条路走到头之后,再掉头往回走,就是回溯
剪枝:走到一个节点时进行判断,若其子节点都不合法,直接掉头往回走,就是剪枝(剪断树枝)
BFS 只有当所有边权重都是1的时候才能用