深度优先搜索(Depth-First Search, DFS)是一种用于遍历或搜索树或图的算法。它的基本思想是:在树或图中从某个起始顶点出发,先沿着树的深度遍历节点,直到找到一个没有子节点的叶节点,然后回溯到叶节点的父节点,继续搜索下一个子节点,直到遍历完整棵树。
下面是一个简单的 Java 代码实现 DFS 算法的例子:
// 定义一个二维数组表示图
int[][] graph = {
{0, 1, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0},
{0, 1, 0, 0, 1, 1},
{0, 0, 0, 0, 0, 0},