专题五:floodfill算法(扫雷游戏精讲)
以leetcode529题
题目解析:
M表示:未挖出的地雷
E表示:未挖出的空白方块
什么叫未挖出,就是你没玩的时候,棋盘是什么样的,就是你站在上帝视角看待棋盘
B:表示挖出来是空白的,如果是空白的要延伸到有数字的才会停止
1~8是如果你周围有地雷,当你挖出来时就显示周围的地雷数
X:表示挖出来的地雷,如果挖出来是地雷就用X表示,并且游戏结束
看示例:一开始点了左下角,左下角是空白就用B表示,知道遇到数字就停
返回:当你点一次,返回棋盘的结果
算法原理分析:
其实本质就是一道深度搜索的题目
只不过是在我们原先上下左右的基础上,在添加四个对角的方向罢了
代码编写:
dx,dy为8个方向的偏移量