四种寻路算法并比较
来源:互联网 发布:mysql面试基本语句 编辑:程序博客网 时间:2024/06/10 23:12
四种算法是DFS,BFS,Heuristic DFS, Heuristic BFS (A*)
用了两张障碍表,一张是典型的迷宫:
char Block[SY][SX]=
{{1,1,1,1,1,1,1,1,1,1,1 },
{1,0,1,0,1,0,0,0,0,0,1 },
{1,0,1,0,0,0,1,0,1,1,1 },
{1,0,0,0,1,0,1,0,0,0,1 },
{1,0,1,1,0,0,1,0,0,1,1 },
{1,0,1,0,1,1,0,1,0,0,1 },
{1,0,0,0,0,0,0,0,1,0,1 },
{1,0,1,0,1,0,1,0,1,0,1 },
{1,0,0,1,0,0,1,0,1,0,1 },
{1,1,1,1,1,1,1,1,1,1,1 }};
第二张是删掉一些障碍后的:
char Block[SY][SX]=
{{1,1,1,1,1,1,1,1,1,1,1 },
{1,0,1,0,1,0,0,0,0,0,1 },
{1,0,1,0,0,0,1,0,1,1,1 },
{1,0,0,0,0,0,1,0,0,0,1 },
{1,0,0,1,0,0,1,0,0,1,1 },
{1,0,1,0,0,1,0,1,0,0,1 },
{1,0,0,0,0,0,0,0,1,0,1 },
{1,0,1,0,0,0,1,0,1,0,1 },
{1,0,0,1,0,0,1,0,0,0,1 },
{1,1,1,1,1,1,1,1,1,1,1 }};
结果:
尝试节点数 合法节点数 步数
深度优先 416/133 110/43 19/25
广度优先 190/188 48/49 19/15
深度+启发 283/39 82/22 19/19
广度+启发 189/185 48/49 19/15
所以可以看出深度+启发是最好的,效率高路径也挺短。A*第一是不真实二是慢三是空间消耗较大。
附:dfs+heu的源程序,bc++ 3.1通过
- 四种寻路算法并比较
- 四种寻路算法并比较
- 四种寻路算法计算步骤比较
- 对主流的图像分割算法进行比较,并对其部分算法进行优化
- C++实现多种排序算法的排序类,并比较几种排序算法所用时间
- 算法比较
- 算法---比较排序算法
- 算法---比较排序算法
- 比较字符串数组,并排序
- 快速比较和合并文件
- 产生随机数并比较大小
- Linux比较并合并文件
- 排序并比较排序时间
- 请实现两棵树是否相等的比较,相等返回,否则返回其它值,并说明算法复杂度
- 请实现两棵树是否相等的比较,相等返回0,否则返回其他值,并说明算法复杂度。
- 扩展封装暴雪哈希算法(blizard hash algorithm),并与STL map进行操作性能上的比较
- 题目:请实现两棵树是否相等的比较,相等返回,否则返回其他值,并说明算法复杂度。
- 算法--算法运行时间比较
- Java Heap sapce 与 Java PermGen space
- hello
- ORM
- Proteus AT89C51+LCD1602 仿真及烧制运行
- 刚毕业员工职场二三事
- 四种寻路算法并比较
- 最近遇到的几个有趣的工具
- [经验分享] 不支持PCM录音的Android(Ophone)机型一览
- acm pku 1144 ID Codes的算法分析
- WSGI
- 小谈网络游戏同步
- 五子棋算法
- 图解 vmWare 下 ubuntu 网络设置
- vc文件类型