深度优先搜索(DFS)和广度优先搜索(BFS)是常用的图算法,用于遍历和搜索图中的节点。本文将介绍这两种算法的原理和实现,并提供相应的JavaScript代码示例。
深度优先搜索(DFS)
深度优先搜索是一种递归的图遍历算法,其基本思想是从图的起始节点开始,沿着一条路径尽可能深地访问节点,直到无法继续前进,然后回溯到上一个节点,继续访问其他未被访问的节点。
以下是使用JavaScript实现深度优先搜索的示例代码:
class Graph {
constructor() {
this.vertices = []