迭代加深搜索
来源:互联网 发布:子弹图纸尺寸图片编程 编辑:程序博客网 时间:2024/04/30 14:20
迭代加深搜索,实质上是限定下界的深度优先搜索。即首先允许深度优先搜索K层,若没有发现可行解,再将K+1后
重复以上步骤搜索,直到搜索到可行解。
在迭代加深搜索的算法中,连续的深度优先搜索被引入,每一个深度约束逐次加1,直到搜索到目标为止。这样可以
看出重复搜索了好多。但是它的好处在于:
1.空间开销小 每个深度下实际上是一个深度优先搜索,不过深度有限制,而DFS的空间消耗小是众所周知的。
2.利于深度剪枝
3.时间效率不低 虽然重复搜索,但是大家不难理解,前一次搜索跟后一次相不是微不足到的。
我们可以看出,迭代加深搜索算法就是仿广度优先搜索的深度优先搜索。既能满足深度优先搜索的线性存储要求,又能保证发现一个最小深度的目标结点。
从实际应用来看,迭代加深搜索的效果比较好,并不比广度优先搜索慢很多,但是空间复杂度却与深度优先搜索相同,比广度优先搜索小很多。
使用搜索算法的时候,选择正确的搜索方式很重要。当有一类问题需要做广度优先搜索,但却没有足够的空间,而时间却很充裕,碰到这类问题,我们可以选择迭代加深搜索算法。
0 0
- 迭代加深搜索
- 迭代加深搜索
- 搜索-迭代加深
- 迭代加深搜搜索
- poj3134迭代加深搜索
- 7.6迭代加深搜索
- 迭代加深搜索初步
- UVa_11212(迭代加深搜索)
- 搜索专题小结:迭代加深搜索
- 埃及分数 迭代加深搜索 IDS
- 迭代加深搜索 埃及分数
- 迭代加深ID-DFS搜索算法
- 埃及分数,迭代加深搜索
- poj2870Light Up(迭代加深搜索)
- USACO/fence8 迭代加深搜索+剪枝
- 迭代加深搜索 + dp vijos 1159
- UVA 1374 迭代加深搜索
- 埃及分数(迭代加深搜索)
- 图像文件读入和显示
- LeetCode[367] Valid Perfect Square
- 双系统ubuntu16.04 64位安装android studio并启动虚拟机
- Please ensure that adb is correctly located at '<--此处显示adb.exe的全路径-->' and can be executed.
- php 安全处理多线程同时写操作同一文件
- 迭代加深搜索
- 单调栈(poj -- 2559)
- 网络修复-可以上qq但是网页等打不开
- KMP算法 HDU 1686 Oulipo 也就是乌力波啦~~
- 星际之门(一)(cayley定理n阶完全图的生成数个数,快速幂)
- HOJ 1003题 题解
- 【codeforces】Bear and Three Balls(sort)
- Git入门(7)-撤销修改
- POJ 2553The Bottom of a Graph