一:说明
(1)使用floyd实现各个站点的计算记录和路径
(2)站点获取和初始距离根据外部文件得到
(3)结果以外部文件的形式存储
(4)站点间转乘,认为初始值也为1
(5)代码注释比较详细,如有疑问或者代码有,请联系我,谢谢
(6)java中二维数据的定义:
a: float[][] numthree; //定义一个float类型的2维数组
...
分类:
编程语言 时间:
2014-11-13 12:58:05
阅读次数:
209
图示:模版: 1 /* 2 Dijkstra计算单源最短路径,并记录路径 3 4 m个点,n条边,每条边上的权值非负,求起点st到终点et的最短路径 5 6 input: 7 n m st et 8 6 10 1 6 9 1 2 6 10 1 3 2 1...
分类:
编程语言 时间:
2014-11-10 23:15:18
阅读次数:
327
一、概念 1.斐波那契堆 斐波那契堆是可合并堆 在不涉及删除的操作(除去EXTRACT和DELETE)中,操作仅需O(1)的平摊运行时间 当EXTRACT和DELETE的操作数目较小时斐波那契堆能得到较好的运行效率。 斐波那契堆不能有效地支持SEARCH操作 用于解决诸如最小生成树和寻找单源最短路径...
分类:
编程语言 时间:
2014-10-26 09:04:15
阅读次数:
665
Dijkstra算法(单源最短路径) 单源最短路径问题,即在图中求出给定顶点到其它任一顶点的最短路径。在弄清楚如何求算单源最短路径问题之前,必须弄清楚最短路径的最优子结构性质。一.最短路径的最优子结构性质 该性质描述为:如果P(i,j)={Vi....Vk..Vs...Vj}是从顶点i到j的最短路径...
分类:
其他好文 时间:
2014-10-21 17:23:26
阅读次数:
224
详细介绍:广度优先搜索算法八:Dijkstra算法戴克斯特拉算法(Dijkstra’s algorithm)是由荷兰计算机科学家艾兹赫尔·戴克斯特拉提出。迪科斯彻算法使用了广度优先搜索解决非负权有向图的单源最短路径问题,算法最终得到一个最短路径树。该算法常用于路由算法或者作为其他图算法的一个子模块。...
分类:
其他好文 时间:
2014-09-25 00:18:07
阅读次数:
280
题目大意:一个有N个点m条边的无向图,可以将路径上k条边的权值变为0,试求此时1-n的最短路径长度。
Sol:我们考虑分层图思想,将图复制k+1份,分别是0~k层,表示此时已经经过的“免费边”条数。
层与层之间的边权值为0且为单向由上层指向下层。
这样我们以0层的1点做单源最短路径。每一层的n点的距离最小值即为答案。
只不过这样的点数为O(K*N),边数为O(K*M),比较慢。
...
分类:
其他好文 时间:
2014-09-19 15:42:55
阅读次数:
223
单源最短路径之dijkstra算法最优子问题:dis(s,...,e)是s到e的最短路径,在这条路径上的所有点之间dis(pi,pj)距离是最小的。算法思路:首先初始化,dis[s][i]是s到i的距离,直接相连的就是其距离,不直接相连的就是无穷大下面是算法主要模块:1.选取dis[i]最小的点加入...
分类:
其他好文 时间:
2014-09-02 00:03:43
阅读次数:
197
Dijsktra算法介绍Dijsktra算法是大牛Dijsktra于1956年提出,用来解决有向图单源最短路径问题。但不能解决负权的有向图,若要解决负权图则需要用 到Bellman-Ford算法。算法思想是,在dfs遍历图的过程中,每一次取出离源点的最近距离的点,将该点标记为已访问,松弛与该点相邻的...
分类:
Web程序 时间:
2014-08-30 12:28:09
阅读次数:
271
这个写的很好:http://blog.csdn.net/zhongyanghu27/article/details/8221276dijkstra算法:先给出一个无向图用Dijkstra算法找出以A为起点的单源最短路径步骤如下算法模板:void dijkstra(int x){ int i,j...
分类:
其他好文 时间:
2014-08-27 18:10:58
阅读次数:
192
最短路问题是一种常见的问题,她一般被描述为包含n个点和m,主要分为两类:(1)(单源最短路径)求解从起点s到终点e的最短路径(2)(多源最短路径)求解图中任意两点的最短路径。常用的解题算法有四种:Dijkstra,bellman-ford,spfa,Floyd
分类:
其他好文 时间:
2014-08-23 11:17:40
阅读次数:
154