随笔分类 - 图论
摘要:与Prim算法贪心选择不同,Kruskal算法采取每次选择权值最小的边的方法,这样,在不构成环且最后能够连接完所有边它们的权重和一定是最小的。 和之前Prim算法的图一样,便于区别二者。 Kruskal既然是选择最小的边,那么就先找一个最小的出来,是1-6(10) 然后继续找出剩下的边中最小一条边,
阅读全文
摘要:题目在这 Sample Input Sample Output 题目意思:4个点,6个边,每个边有对应的权值。最后输出一行为路径中最大的边的值,第二行为路径上边的总数, 第三行为每条边的始末编号。题目需要求出最小生成树的最大边的最小值。 1 /* 2 Problem: 1861 User: 3 Me
阅读全文
摘要:最小生成树minimal-spanning-tree(概念就不具体介绍了)有两种基于不同贪心选择的算法,一个为Prim算法,一个为Kruskal算法。 Prim和Dijkstra算法很像,只是少了些东西。它将结点分为两类,一类是已经选择了的确定的,构建好了的mst的结点,另一类是还没确定的未选择的结
阅读全文
摘要:点这里看题目 根据题意和测试用例知道这是一个求次短路径的题目。次短路径,就是比最短路径长那么一丢丢的路径,而题中又是要求从一点到指定点的次短路径,果断Dijkstra。 R (1 ≤ R ≤ 100,000,N (1 ≤ N ≤ 5000) ,length D (1 ≤ D ≤ 5000),所以我用
阅读全文
摘要:普通Dijkstra: 1 void DijkstraPath(int v0,int vis[],int dist[],int path[]) 2 { 3 int onePath[maxn]; 4 int d; 5 int k; 6 for(int i = 0;i < n;i++) 7 { 8 if
阅读全文
摘要:转自:https://blog.csdn.net/hz18790581821/article/details/70233495 我们首先来看一下什么是前向星. 前向星是一种特殊的边集数组,我们把边集数组中的每一条边按照起点从小到大排序,如果起点相同就按照终点从小到大排序, 并记录下以某个点为起点的所
阅读全文

浙公网安备 33010602011771号