![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
江枫forever
喜欢编程的初级菜鸟
展开
-
任意两点之间的最短路径问题(Floyd-Warshall算法)
求解所有两点之间的最短路问题叫做任意两点之间的最短路问题。Floyd-Warshall算法考虑的是 一条最短路径上的中间结点。例如,简单路径p={v1,v2,...vl}上的中间结点指的是路径p上除了v1和 vl之外的任意节点,也就是处于集合{v2,v3,...vl-1}中的节点。Floyd-Warshall算法基于以下: 假定图G的所有顶点为V={1,2,3,...,n},考虑其中的一个子集原创 2015-08-12 17:11:22 · 7507 阅读 · 0 评论 -
图的最短路径-Prim算法
算法思想 设G=(V,E)是具有n个顶点的连通图,T=(U,TE)是G的最小生成树.其中V和U分别是图和树的定点集合,E和TE分别是图和树的边的集合.初始,T树为空,即U和TE都是空集.首先选择图中的任意顶点作为根,加入到集合U中,然后每加入一个顶点,都必须加入一条以树已有顶点和新加入顶点连成的边.这样才能既保证连通同时又不产生回路.这样的添加工作只要进行n-1次.算法分析 使用贪心算法,原创 2015-08-08 18:26:14 · 2156 阅读 · 0 评论 -
单元最短路问题
1.单元最短路问题(Bellman-Ford算法)贪心策略,始终选择从出发点s到达顶点i的当前最短距离为d[i].那么就会出现下列推导关系:d[i]=min{d[j]+cost[j][i]|e=(j,i)属于E}(其中cost(j,i)表示从顶点j到顶点i的权值) 如果给定的图是DAG,那么就可以按拓扑序给顶点编号,并且利用上述推到关系计算,但是如果给定图 中有圈,就无法依照这样的顺序来进行计原创 2015-08-12 14:20:22 · 666 阅读 · 0 评论 -
POJ-3255次短路
解题思路:本题利用Dijkstra算法的原理解决。由于要求出次短路,我们需要思考Dijkstra成功求解出最短路的原理,然后再加以改进。Dijkstra算法的原理是先把所有距离设为INF,然后令dist[0]=0。每次都从已经确定了距离的顶点出发,依次更新跟它相邻的结点的最短距离,以后就不再考虑“最短距离已经确定了的顶点”。注意:我们不用考虑的是“最短距离已经确定了的顶点”。那么怎么才知道哪些顶点的原创 2015-08-14 09:48:58 · 423 阅读 · 0 评论 -
动态规划:从新手到专家
本文转载自:http://hawstein.com/posts/dp-novice-to-advanced.html作者:Hawstein前言本文翻译自TopCoder上的一篇文章: Dynamic Programming: From novice to advanced ,并非严格逐字逐句翻译,其中加入了自己的一些理解。水平有限,还望指摘。前言_转载 2017-09-20 20:41:24 · 206 阅读 · 0 评论