我正在尝试解决4个方块的拼图问题。根据我的经验,我的逻辑是每个数字都与空格交换,然后到达正确的位置。
我有这样的初始状态:
1 32
我的目标状态是:
1 23
我使用的方法是:(关键:R->右,D->下;up->上;L->左)
1 3 2 R/ D| up\ \L / | \ \ 1 3 1 (边界存在,不可能移动) 2 2 3 R/ D| up\ \L / | \ \ 3 1 3 1 2 2 ............... .................
这就是我正在做的事情,但我每次都在树的某个状态下重复出现,但不是正确的目标状态。如果我使用了错误的树形方法或算法,请告诉我。因为我是在研究了互联网上的资料后才实现这种树形结构的。
回答:
算法本身没有问题。只是没有解决方案。从你的初始状态到最终状态是没有办法达到的。