首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

一个很简单的拼图初始化算法. 大家评价下.该怎么解决

2012-02-11 
一个很简单的拼图初始化算法. 大家评价下.以最简单的数字拼图为例,目标状态是:123456780(0代表空块)那么我

一个很简单的拼图初始化算法. 大家评价下.
以最简单的数字拼图为例,目标状态是:
123
456
780
(0代表空块)

那么我在开始游戏时的打乱算法则是,
在0~4中随机产生一个数字,如果0由0往上移(即与0上面的一个数字交换).
依此,1往下,2往左,3往右..只要保证一下不让0移到界外去就行.

执行这个方法几十次,就可以打乱整拼图了.而且保证有解,   因为最不幸的情况也有唯一解,就是把刚才的移动全部倒过来再做一遍就好了.

现在的问题是我想知道,   我的这个算法会不会每次都只产生一个唯一解//

会的话好像有点恐怖...........> _ <

有没有人有更好的拼图初始化算法`?????

[解决办法]
偶也是这么做的,肯定不会只有唯一解,再不济2323来回移动两次不也变成别的解了么?
[解决办法]
不会只有唯一解
[解决办法]
目前还是你这个办法好。哎。
我也在想别的初始化办法,暂时没个头绪。
要是楼主你想到了,别忘了给我留个言共享下,我也想要啊。

热点排行