深度优先搜索
在DFS中,我们会访问节点r,然后循环访问r的每个相邻节点。在访问r的相邻节点n时,我们会在继续访问r的其他相邻结点之前先访问n的所有相邻节点。也就是说,在继续搜索r的其他子节点之前,我们会先穷尽搜索n的子节点。
1 | void search(Node root) |
广度优先搜索
在BFS中,我们会在搜索r的“孙子节点”之前先访问节点r的所以相邻节点。用队列实现的迭代方案往往最有效。
1 | void search(Node root) |
在DFS中,我们会访问节点r,然后循环访问r的每个相邻节点。在访问r的相邻节点n时,我们会在继续访问r的其他相邻结点之前先访问n的所有相邻节点。也就是说,在继续搜索r的其他子节点之前,我们会先穷尽搜索n的子节点。
1 | void search(Node root) |
在BFS中,我们会在搜索r的“孙子节点”之前先访问节点r的所以相邻节点。用队列实现的迭代方案往往最有效。
1 | void search(Node root) |