![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
李小胖向前冲
这个作者很懒,什么都没留下…
展开
-
最大流问题——Ford-Fulkerson算法
该算法的核心是三个重要的概念: 1.残存网络(residual network) : 指的是除去一条路径并对该路径加上取反边之后的网络,实际上表示可供反悔的网络 2.增广路径 (augmenting path) :指的是残存网络中可以从s到t连通的一条路径 3.割(cut):指的是截面的切割 切割的容量:指的是一个切割的正向边的容量和 切割的净流量:指的是一个切割的正向边流量减去负向边流量。 最大流最小切割定理:最大流量等于最小切割容量 Ford-Fulkerson算法: 1.先把所有边的.原创 2021-05-02 19:14:24 · 1619 阅读 · 0 评论 -
Bellman-Ford算法
能解决dijkstra算法所不能解决的负权边问题。 此外它很好理解,就是从给的第一条边开始遍历松弛,遍历n-1轮即可保证得到最优解。原创 2021-04-24 13:26:35 · 57 阅读 · 0 评论 -
dijkstra算法
dijstra算法是为了求有向正权图的单源最短路径。 先是从一个源点开始,每条边松弛一次。再找到最近的点,以这个点继续松弛,vis数组置0。等到容器中为空时遍历完成。此时如果还有点的vis为0则它不能与源点连通。 可以适用于负权图的情况嘛? 不行,因为它用的是贪心算法,只会考虑点的相邻边。 代码如下: #include <iostream> #include <string> using namespace std; int map[1005][1005]; int v原创 2021-04-22 16:47:44 · 111 阅读 · 0 评论 -
2021-03-22
算法设计——点对最小距离 一、一维点对 O():直接两个for循环遍历 O(nlogn):排序之后再遍历一次,它不能应用到二维 O(nlogn):分治法: 1.分:把这些点按照中值算法分成大的部分和小的部分 2.治: 等到分成最小块之后(条件自己设定,反正应该是4或以上),求出左边点集距离dl和右边点集距离dr 3.合:return min{dL, dR, min SR – max SL} 其中SR和...原创 2021-03-23 18:43:58 · 73 阅读 · 0 评论