关于解决滑动拼图的方法

时间:2013-03-31 19:10:56

标签: algorithm dynamic-programming procedural-programming

我已经开始阅读V Anton Spraul的“像程序员一样思考”。这是问题所在。

书中提到的列车技术对于其中的例子很有效。 我试图编写列车逼近方法来解决滑动瓦片问题。

假设我正在处理完整问题的子集,对于下面的一组tile(如本书中的示例所示),提到的方法工作正常。

6 8 .

5 4 7

我们按逆时针方向移动,直到我们在顶行按顺序获得4,5,6,然后在空白区域滑动8以使所有按顺序排列。

但是对于下面的内容,我找不到任何合适的方法

. 8 6

7 4 5

难道可能存在无法解决难题的排列吗?

谢谢,

/ MS

1 个答案:

答案 0 :(得分:3)

是的,事实上有些难题是无法解决的。找出的方法是尝试一次解决两个难题:一个是原始拼图,一个是原始拼图,两个拼贴切换。当你解决一个谜题时,你知道另一个谜题无法解决。