无法理解8-N拼图

时间:2016-06-09 21:52:45

标签: algorithm

我一直在阅读this

如果你去幻灯片19,它将开始谈论一个8-N难题。

1)所以为了解决这个问题,我必须生成所有可能的状态,然后遍历树?

2)好的,如果是1),那么为什么要使用树?我可以使用其他数据结构吗?

3)为什么我需要生成所有状态?我不能像我一样创造它们,这会让我有机会更快地达到我的目标吗?

4)应该给出开始和目标状态吗?

由于

2 个答案:

答案 0 :(得分:1)

您并不需要事先生成所有状态(您可以在沿着状态移动时生成它们)。您还可以使用图形并标记已尝试过的状态(以后不再尝试)。

是的,您的起始位置将给予您(元素​​的随机排列)。最终位置是赢得比赛的时间。据我记忆 - 对于你的谜题,这是一个有序的位置)。对于其他一些游戏,您可以拥有可能的位置(如国际象棋)。

答案 1 :(得分:1)

解决8-puzzle

1-3)您应该生成所有可能的状态

原因: 你不知道目标位置。 有很多方法可以达到目标。 有些方法可能无法实现目标,需要回溯。

2)树数据结构

原因: 避免重复状态。 在图中出现重复状态。它增加了搜索时间。

4)开始和目标 仅指定了开始状态。