广度优先法(队列法)求迷宫最短路径的时间空间复杂度

L114838410 2009-01-07 10:08:58
广度优先法(队列法)求迷宫最短路径的时间空间复杂度~~~谢谢了~~
...全文
659 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Ccelily 2009-01-09
  • 打赏
  • 举报
回复
可以想象成一棵排列树
假设起点为a[1][1],终点为a[n][n]
且路线只准向右向下,因为如果有向左或向上,其路线肯定不是最短的
所以,可以直接排除掉
那么就是在两个方向中选择一个方向
这样下来你就可以构建这棵排列树了
再分析一下,最多应该只要2n步
所以这个排列树高度最高为2n
所以最坏情况下的时间复杂度应该为O(2^2n)。
利用分支界限法,通过剪枝,可以降到多项式
a0313632 2009-01-08
  • 打赏
  • 举报
回复
题目不是说的很清楚啊:
迷宫假设是: N*N;
假设有多个迷宫的解;(最短路径)

空间复杂度就是队列中的格子指针数, 所以是O( n^2);
时间复杂度是当找到第一个解时一共访问了多少个格子, 所以是 O( n^2);

迷宫问题是 一种回溯穷举的方法。所以复杂度很大。


米菲爸爸 2009-01-08
  • 打赏
  • 举报
回复
这个不一定,需要平摊分析,看你的数据是怎么存储的。
不过最上限不会超过v立方。哈哈

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧