图论
Mollnn
这个作者很懒,什么都没留下…
展开
-
最小生成树Prim与Kruskal算法的比较
最小生成树是图论问题中很基本的一个操作。常用的算法有Prim和Kruskal两种算法。本文对这两种算法稍作区别与讨论。Prim算法是依赖于点的算法。它的基本原理是从当前点寻找一个离自己(集合)最近的点然后把这个点拉到自己家来(距离设为0),同时输出一条边,并且刷新到其他点的路径长度。俗称,刷表。 根据Prim算法的特性可以得知,它很适合于点密集的图。通常在教材中,对Prim算法进行介绍的标程都采用原创 2016-09-19 21:48:50 · 14698 阅读 · 1 评论 -
Dijkstra最短路径算法的优化
在传统的Dijkstra算法中,我们不难发现,大量的时间被用于遍历d[]数组。 因此,我们可以通过一个小顶堆来替代这个遍历过程。优化后的算法复杂度为O(v*lgn)。#include <cstdio>#include <cstring>#include <queue>using namespace std;#define MAXN 10005#define MAXM 500005#de原创 2016-10-06 13:31:56 · 1269 阅读 · 0 评论