码迷,mamicode.com
首页 >  
搜索关键字:迭代加深    ( 135个结果
12558 - Egyptian Fractions (HARD version)(IDA*算法)
IDA*算法,迭代加深搜索和A*算法的结合 。 迭代加深搜索适用于那些没有明显深度上限的题目,将深度从小到大枚举,直到找到最优解 ,减小了深搜的盲目性 。 A*算法需要一个乐观估价函数,在这个函数里寻找一个代价最小的点去搜索,所以时间复杂度都浪费在这个上面了 。 其实我照着紫书上巧的,感觉很容易,实际上其中的算法思想是要静下心来仔细研究的,练ACM这么久了,深深感到这个竞赛是那么的迷人,又是...
分类:编程语言   时间:2015-08-04 21:06:59    阅读次数:163
UVA 11214 Guarding the Chessboard 守卫棋盘(迭代加深+剪枝)
就是个暴力,和八皇后很像,但是还是要加一些的剪枝的。1.最裸的暴搜6.420s,差点超时2.之前位置放过的就没必要在放了,每次从上一次放的位置开始放0.400s#include#includeconst int maxn = 11;char G[maxn][maxn];int maxd;int n,...
分类:其他好文   时间:2015-07-31 12:22:40    阅读次数:926
BZOJ 1085: [SCOI2005]骑士精神( IDDFS + A* )
一开始写了个 BFS 然后就 T 了...这道题是迭代加深搜索 + A*------------------------------------------------------------------------------#include#include#include#include#def...
分类:其他好文   时间:2015-07-09 12:38:55    阅读次数:157
人工智能搜索算法(深度优先、迭代加深、一致代价、A*搜索)
搜索算法问题求解一、需求分析分别用深度优先、迭代加深、一致代价、A*搜索算法得到从起始点Arad到目标点Bucharest的一条路径,即为罗马尼亚问题的一个解,在求解的过程中记录每种算法得到的解,即输出每种解得到的条路径。图一:罗马尼亚地图二、详细代码测试类:/**Main类,打印各个算法的结果* ...
分类:编程语言   时间:2015-06-16 16:14:43    阅读次数:288
人工智能搜索算法(深度优先、迭代加深、一致代价、A*搜索)
搜索算法问题求解 一、需求分析 分别用深度优先、迭代加深、一致代价、A*搜索算法得到从起始点Arad到目标点Bucharest的一条路径,即为罗马尼亚问题的一个解,在求解的过程中记录每种算法得到的解,即输出每种解得到的条路径。   图一:罗马尼亚地图  二、详细代码 测试类: /**Main类,打印各个算法的结果 * @author dyl * */classMain{...
分类:编程语言   时间:2015-06-07 12:38:04    阅读次数:155
UVA_埃及分数(Hard Version) UVA 12588
迭代加深搜索基础题
分类:其他好文   时间:2015-04-30 00:49:13    阅读次数:123
POJ 2248 迭代加深搜索
a[0]=1;  a[1]=2; 之后每个数可以由前面的任意两个数相加得到(可以是同一个数),问得到数字N的最短序列 N最大为100,迭代加深搜索打表 #include "stdio.h" #include "string.h" int w; int pri[110][15]; // 记录答案 int len[110]; // 数字N所需长度 int seq[110]; // DFS的每一...
分类:其他好文   时间:2015-04-28 11:45:13    阅读次数:103
埃及分数问题
样例输入:495  499 样例输出:495/499 = 1/2+1/5+1/6+1/8+1/3992+1/14970 规则是加数少比加数多好,加数相同,小的数越大越好。 分析:回溯无限,宽度优先便利一层都跑不完,所以用迭代加深搜索(iterative deeping):从小到达枚举深度上线maxd,枚举上限还可以减枝。 IDA*算法:深度上线maxd,当前节点n的深度为g(n),乐观估价...
分类:其他好文   时间:2015-04-27 15:19:09    阅读次数:118
搜索专题小结:迭代加深搜索
迭代加深搜索 迭代加深搜索(Iterative Deepening Depth-First Search, IDDFS)经常用于理论上解答树深度上没有上界的问题,这类问题通常要求出满足某些条件时的解即可。比如在“埃及分数”问题中要求将一个分数a/b分解成为若干个形如1/d的加数之和,而且加数越少越好,如果加数个数相同,那么最小的分数越大越好。下面总结一下该方法的一般流程: (1)概述:迭代加深...
分类:其他好文   时间:2015-04-12 09:22:44    阅读次数:157
例题7-12 旋转游戏 UVa1343
1.题目描述:点击打开链接 2.解题思路:本题利用迭代加深搜索解决。好久没做这个专题了,感觉这种方法有点力不从心,不会寻找估价函数是硬伤。。。只好学一学别人的代码。 本题要求棋盘中间的8个方格都要是相同的数字。紫书上说是利用状态空间搜索解决,大致模板还是八数码问题的模板。但是写了半天最后WA了,感觉这道题用那个模板写出来会很复杂。最后看别人的代码,才发现大多都是利用迭代加深搜索解决的,代码量也...
分类:其他好文   时间:2015-04-11 18:01:30    阅读次数:161
135条   上一页 1 ... 9 10 11 12 13 14 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!