DFS——黑色瓷砖

简介: DFS——黑色瓷砖

image.png

image.png算法思想:其实就是dfs,注意每次访问过的黑色瓷砖标记成白色瓷砖,return向四个方向展开。

int digui(int x, int y, char array[][6]) {
  if (x < 0 || x >= 5 || y < 0 || y >= 5) {
    return 0;
  }
  if (array[x][y] == '#') {
    return 0;
  }
  else {//要么写else,要么写if(array[x][y]=='.'||array[x][y]=='@')
    array[x][y] = '#';//将已经走过的黑砖设置为白砖防止重复走
    //向四个方向递归寻找黑砖,找到一块黑砖,就总数+1.
    return 1 + digui(x - 1, y, array) + digui(x + 1, y, array) + digui(x, y - 1, array) + digui(x, y + 1, array);
  }
}


相关文章
|
6天前
|
算法 前端开发
前端算法 岛屿的最大面积 DFS(深度优先搜索)
前端算法 岛屿的最大面积 DFS(深度优先搜索)
12 0
|
6天前
|
算法 前端开发
前端算法-岛屿的最大面积-DFS(深度优先搜索)
前端算法-岛屿的最大面积-DFS(深度优先搜索)
12 0
|
8月前
遍历图(dfs)
遍历图(dfs)
19 0
|
10月前
|
存储 机器学习/深度学习 人工智能
邻接矩阵存储图的深度优先遍历(dfs)和广度优先遍历(bfs)
邻接矩阵存储图的深度优先遍历(dfs)和广度优先遍历(bfs)
146 0
|
11月前
DFS:家谱
DFS:家谱
|
12月前
|
算法
DFS深度优先搜索
DFS深度优先搜索
|
算法
LC 695 岛屿的最大面积 DFS
LC 695 岛屿的最大面积 DFS
74 0
LC 695 岛屿的最大面积 DFS
|
存储 算法 PHP
深度优先搜索(DFS)
深度优先搜索(DFS)
165 0
深度优先搜索(DFS)
|
存储 C++
C++实现图 - 02 图的遍历(DFS、BFS)
上一讲我们对图有了一个大概的了解,但是只讲了如何存储图,还没有讲如何遍历图。这一讲我们来介绍图的遍历方式,一共分为深度优先搜索(DFS)和宽度优先搜索(BFS)。
416 0
C++实现图 - 02 图的遍历(DFS、BFS)
|
算法
【29. DFS深度优先】
# 概述 - DFS:深度优先遍历,从一条路径走到叶节点,然后回溯,继续遍历(不撞南墙不回头) - BFS:广度优先遍历,从根节点,一层一层的遍历,每一层把所有的节点都遍历完成。 ## 递归思想 - 递归在于不断调用自己的函数,层层深入,直到遇到递归终止条件后层层回溯,其思想与dfs的思想不谋而合;因此,可以使用递归来实现dfs。 - 递归的进入比较容易理解,但是递归的回溯是在计算机底层执行的,我们无法看到。因此这是理解递归的唯一一个难点。
106 0
【29. DFS深度优先】