首页 > 解决方案 > 迷宫节点扩展和O(n)研究

问题描述

我的代码本身没有问题,这更像是关于已经工作的代码的一般问题。我使用广度优先搜索解决了一个迷宫,我正在研究节点扩展、空间复杂度和 O(n)——对于 BFS,它是 O(b^d)。

完成后我不习惯学习该程序,我想知道是否有任何最好的特定方法。我知道代码本身会给我一些时间,但我想知道是否有任何库函数可以提供帮助,或者是否有我可以实现的函数可以更好地向我展示定量结果。

我有能力在多个不同的迷宫上运行测试(我什至有一个迷宫创建者),但我要求的东西(任何东西)比仅仅在三个或四个不同的迷宫上运行这段代码并使用自动输出更量化。我也在使用我不熟悉的 pycharm - IDE 有没有办法将这些信息形式化?

标签: python

解决方案


对于迷宫问题(没有任何假设和事先学习过的网络知识),A-STAR 算法是地球的状态。它的复杂性是:

最差复杂度:O(|E|) = O(b^d) 空间复杂度:O(|V|) = O(b^d)

对于相当大的网络(例如道路网络),存在实用的算法,因为我们可以先验地预先计算一些路径。在完成预处理(或学习)之后,它们的时间复杂度将更小(与更大的空间复杂度进行权衡)。


推荐阅读