导航:首页 > 源码编译 > 空白点算法

空白点算法

发布时间:2023-08-04 21:21:33

⑴ 扫雷点到空格时的算法 跪求

从手工点开的这个空格进行处理,按上右下左或你自己定义的一个顺序来判断相应位置的格式是否是空格且未被点开,如果不是,则跳过,如果是,则将其自动点开,同时把这几个位置加入队列后续处理。
简单的流程图示意:

当前位置是空白位置?----否--->非空白的处理
|
|是
|
V
加入队列
|
V
+--->队列为空?-------->是--->结束
||
||否
||
|V
|第一个元素出队
||
|V
|点开该元素所指的位置
||
|V
|上左下右的位置如果是空白且未点开则入队
||
--------+


上面是非递归的方案,递归方案则更容易了:
伪代码算法描述如下:
Click(pos)//点开pos这个位置
{
//IsClicked()判断是否是已经点开的格子
if(IsClicked(pos))
return;

//IsBlank()判断是否是空白格子
if(!IsBlank(pos))
{
点开非空白格子的处理
}

//下面是点开空白格子的处理
ClickBlank(pos);
}

ClickBlank(pos)
{
if(!IsBlank(pos))
rerurn;

if(IsClicked(pos))
return;

//下面对四个方向的格子进行自动点开
//你需要计算四向的格子位置,无效的直接返回

ClickBlank(pos上面的格子);
ClickBlank(pos右面的格子);
ClickBlank(pos下面的格子);
ClickBlank(pos左面的格子);
}

阅读全文

与空白点算法相关的资料

热点内容
本地电脑如何做网站服务器 浏览:484
小寻s5下载的app怎么卸载 浏览:306
zbrushpdf 浏览:897
met肌肉能量技术pdf 浏览:195
php面试重点 浏览:683
如何从管理员界面删除文件夹 浏览:908
单片机三总线信息如何隔离 浏览:690
云服务器研发费用明细 浏览:957
unity3d手机游戏开发pdf 浏览:366
mysql重启命令linux 浏览:876
程序员日常业余内容 浏览:363
steam如何更改吃鸡服务器 浏览:212
我的世界up主多人用什么服务器 浏览:161
缝纫机电脑机编程 浏览:59
autowired源码深度解析 浏览:895
校园卡怎么上app 浏览:743
pascal高精度算法 浏览:870
阿里云服务器如何修改php 浏览:8
51单片机小项目 浏览:607
为什么d盘e盘无法解压 浏览:314