我来来说说手机开发连连看的地图布局和连连看的算法

eyes 们大家好:
这几天闲着没事做了一个手机版得连连看,做的很粗糙,不过实现了基本的功能。在做连连看看的这几天感触颇深。下面就写写我做连连看的感受。在项目中的算法都是我自己想的,可能那里写的不是很好。希望得到大家的点评。

首先来说说地图的布局吧。地图我是用一个二维的数组实现的。下面来说说如何来生成这个二维的数组。假如入你的是6*8的大小, 那么最好选择24张不一样的图片(当然这个图片不一定是24张不一样的)为了保证生成的二维数组里面的图片是成双成对的,我声明了一个list list 的大小也是6*8 然后在生成的这个list 的时候两个两个 生成,这样就保证这个list 里面的图片一定是成双成对的。 这个时候就要给 声明的二维数组赋值了,在赋值的时候 要随即取 list 里面的值 ,每取出一个就删除一个,让这个随即数始终在0到list的大小之间。 这样就生成了一个一定成双成对的出现的二维数组了地图了。

上面是我生成地图布局的方法。


下面来说说这个连连看的算法。
首先是横向计算看看两个图片是否可以相连。(这个中间的过程大家看我的代码吧!代码中间有注释)
其次是纵向计算看看两个图片是否可以相连。

一个拐角可以让两张图片的相连的其实也很简单,当两个图片可以用一个拐角相连的时候那么这两个图片刚好可以画成一个矩形,而这两个图片的刚好位于矩形的两个对角。
这个时候你只要把这个矩形对折一下(当然是你想想中的)会得到这个矩形的另外两个对角。只要这两个对角其中的一个在横向的方向和纵向的方向 能和你选中的这两个图片相连,就代表你选中的两个图片在一个拐角中是可以联通的。

两个拐角的其实的思路也很简单,就是那这其中一个 在他的周围找到一个可以和另外一个只有一个拐角相连,如果有这么一个位置就代表 两个图片通过两个拐角就可以相连。

其实我的思路就是,不管是1个拐角还是两个拐角最终都会转化成 横向相连或者纵向相连。
以上,是我的思路。 大家谁有更好的思路。请说下。方便我们大家一起了解。有什么不对的地方请大家说出来。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值