微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

解决河内塔的最佳搜索算法?

如何解决解决河内塔的最佳搜索算法?

哪种搜索算法最适合求解河内塔楼?更具体地说,在不知情的搜索算法中,广度优先搜索,深度优先搜索和迭代加深哪个才是最好的?

解决方法

我认为这些算法都不是解决河内塔的最好方法。河内之塔难题得到了很好的研究,我们为它提供了一些不错的解决方案,其中一些可以递归地工作,而另一些则通过查看数字中的模式来工作。

由于搜索空间很大,因此上述给出的任何不明智的搜索策略都将很快解决河内之塔的麻烦。对于n个磁盘,拼图有3 n 个可能的状态(每个磁盘可以位于三个位置之一),而对于拼图的最短解决方案是长度为2 n -1.如果您使用了任何不为人知的策略,那么您很可能最终会探索整个搜索空间,并且对于n的任何合理值,将3 n 状态保存在内存中的成本(可能需要BFS)或内存中状态为2 n 的1序列(对于DFS或IDDFS)将是禁止的。将此与河内塔的二进制计数解决方案或河内塔的标准递归算法进行对比,每个算法仅使用O(n)总内存。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。