A*搜寻算法,俗称A星算法,作为启发式搜索算法中的一种,这是一种在图形平面上,有多个节点的路径,求出最低通过成本的算法。常用于游戏中的NPC的移动计算,或线上游戏的BOT的移动计算上。该算法像Dijkstra算法一样,可以找到一条最短路径;也像BFS一样,进行启发式的搜索。 A*算法最为核心的部分....
分类:
其他好文 时间:
2014-07-07 11:09:01
阅读次数:
212
2014.07.04 18:32简介: 给定一个有向图,边的权值可能各不相同(不包含负权值)。给定一个起点s,找出起点到所有顶点的最短路径距离。描述: 这就是Dijkstra算法的用武之处了。 实际上,如果从无权值的情况出发,来思考带权最短路径问题的解法,那么应该只需要修改几行之前BFS的代码...
分类:
编程语言 时间:
2014-07-06 18:52:39
阅读次数:
255
求来回最短路加起来最长的一条。
两次SPFA,然后选某个点的来回最长。(有向图)
Dijkstra+邻接矩阵 比较方便建立 反向图。
我用SPFA+2个邻接表(正图+反图),C++ 32ms。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
...
分类:
其他好文 时间:
2014-07-03 16:01:33
阅读次数:
173
多种方法,可以理解为最短路变形。
也可以当作最小生成树。
题意理解就很简单。
青蛙A到青蛙B之间距离中某一次跳的距离,选出最大的。
写了2个最短路的。SPFA 和 Dijkstra。
顺便熟悉一下最小生成树,也写个Kruskal 的。
SPFA:
#include
#include
#include
#include
#include
#include
#...
分类:
其他好文 时间:
2014-07-03 13:52:06
阅读次数:
146
非负权值的但源最短路之 dijkstra
dijkstra-------我认为这个算法的核心思想是:最短路径长度递增。
怎么理解呢?
假如有一条最短路径已经存在了,那么其中任意两点的路径都将是最短的,否则假设是不成立了。
算法实现过程:
已当前点 pos 更新,dis[ i ]的值(即 点 i 到源点的距离) 找出dis[ i ] 最小的 i 点...
分类:
其他好文 时间:
2014-07-02 17:00:49
阅读次数:
216
英语渣就是这点不好。。。
巨恶心这种描述多的题。。
大意就是求 从一个点出发,到某些点,然后又从那些点返回的距离之和的 最小值。
Dijkstra+邻接矩阵。 正向建图,求出出发距离,然后swap边,求出 返回距离。
注意的是 车可能有重复的。某个点有多少车就需要乘以车的数量。
#include
#include
#include
#include
#in...
分类:
其他好文 时间:
2014-07-02 07:16:49
阅读次数:
253
传送门:http://poj.org/problem?id=1511...
分类:
其他好文 时间:
2014-07-01 16:05:38
阅读次数:
169
题目:
链接:点击打开链接
题意:
思路:
对dijkstra稍作修改即可,每次更新dis[]时改为乘积。
代码:
#include
#include
#include
using namespace std;
#define INF 100000000
const int N = 1010;
int n,m;
double map[N][N]...
分类:
其他好文 时间:
2014-07-01 10:53:50
阅读次数:
180
两次SPFA。求 来 和 回 的最短路之和。
用Dijkstra+邻接矩阵确实好写+方便交换,但是这个有1000000个点,矩阵开不了。
d1[]为 1~N 的最短路。
将所有边的 邻点 交换。
d2[] 为 1~N 的最短路。
所有相加为 所要答案。
忧伤的是用SPFA “HDU 1535” AC了,但是POJ 一样的题 “POJ 1511” 就WA了。
...
分类:
其他好文 时间:
2014-07-01 07:20:32
阅读次数:
206