写在前面:图论题的调试真感人 让我们进入正题 ##最短路是啥 emmm 顾名思义最短路就是求一个点到另外一个点的最小距离 一般来说最短路分为:单源最短路和多源最短路 单源最短路就是求一个源点到另外多个点的最短距离 而多源最短路就是求多个点到其他点的最短距离 算法一般有: floyd(多源 O(\(n ...
分类:
其他好文 时间:
2020-07-03 21:51:41
阅读次数:
83
邻接矩阵存储图,n<= 100, 使用多源最短路算法Floyd算法(\(O(n^3)\)),求出重要城市之间最短路径。 遍历所有可能的配对,找出最小路径代价。具体的,求出所有重要城市的全排列,让相邻两城市配对,累加路径代价,再更新最小代价。 import java.util.*; public cl ...
分类:
其他好文 时间:
2020-07-01 22:05:20
阅读次数:
69
手机导航是怎么得出两个地点间的最短线路?把地图简化为一个加权图,然后利用这个加权图查找最短路径。 将地点看成节点,把道路看成边,整个地图就可看成一个加权图 迪克斯特朗算法 Floyd算法 A*算法 迪克斯特朗算法 如图所示公交车线路图,从A站到F站,如何知道坐车距离最短,可用迪克斯特朗算法。 迪克斯 ...
分类:
编程语言 时间:
2020-06-30 22:36:07
阅读次数:
94
最短路径——Floyd算法 可以用来求带权图和无权图 Floyd算法:求出每一对顶点之间的最短路径 使用动态规划思想,将问题的求解分为多个阶段 第一个矩阵就是图的邻接矩阵 第二个矩阵表示两个顶点之间的中转点 遍历上一个阶段留下来的矩阵A,对于上一个矩阵A当中的每一个具体的元素我们都进行: 若 A^( ...
分类:
编程语言 时间:
2020-06-30 14:43:06
阅读次数:
79
数论 高斯消元法 0.1 概述 既然名为“高斯消元法”,肯定是高斯小朋友发明的。是一个复杂度$O(n^3)$的算法。(对不起,floyd君!再也不嘲讽你的复杂度了::>_<::) 这个算法的应用主要分为两类:“辗转相除法”和“列主元消元” 1.1 列主元消元 嘿,我就不按顺序来 这个方法的适用特征为 ...
分类:
其他好文 时间:
2020-06-29 22:38:43
阅读次数:
70
其实没什么好说的,从点 i 到点 j ,除了直接一条边连接直通还可以通过别的边中转得到,这样就得到了一个类似dp的一个状态转移方程。但是注意:1.Floyd必须用邻接矩阵存图。2.不能解决负环问题。 #include <bits/stdc++.h> using namespace std; int ...
分类:
编程语言 时间:
2020-06-28 18:56:40
阅读次数:
59
图论算法内容难度较大,且灵活多变,本篇是对前述内容的小结 1. 图论算法设计难点 (1)如何将一个实际问题转化成图上的搜索问题(建模难) (2)如何选择最优的搜索方式,搜索代价的代价函数怎么设计(构造难) 2. 算法一览 (1)图论基本算法(DFS、BFS、最小生成树(prim(贪心)、kruska ...
分类:
编程语言 时间:
2020-06-24 16:36:08
阅读次数:
63
GitHub 15.2k Star 的Java工程师成神之路,不来了解一下吗! GitHub 15.2k Star 的Java工程师成神之路,不来了解一下吗! 近日,美国黑人乔治?佛洛伊德(George Floyd)被警员制服期间死亡而触发的反种族主义已经持续了10多天,这场有关种族的示威浪潮蔓延至 ...
分类:
其他好文 时间:
2020-06-17 10:29:06
阅读次数:
79
1 #include <iostream> 2 #include <cstdio> 3 #include <algorithm> 4 5 using namespace std; 6 7 const int N = 110; 8 int f[N][N]; 9 10 //核心想法://i到达j经过前k ...
分类:
其他好文 时间:
2020-06-17 01:51:16
阅读次数:
67
又是一道交互题 题目描述:你有一个 \(n\) 个点的竞赛图,有 \(m\) 条边为粉红色,其余为绿色。粉红色边的方向已知,绿色边方向未知,但你可以询问不超过 $2n$ 次一条边 \(\{u,v\}\),交互器会告诉你这条边的方向。求一个点 \(u\),使得对于任意 \(v\neq u\),\(u\ ...
分类:
其他好文 时间:
2020-06-16 20:07:33
阅读次数:
51