算法魔导书
以经典的算法题为基础,讲解各类常用的竞赛和面试算法,以及如何将这些算法运用到实际。
血小板自动机
Acmer蒟蒻,深度学习炼丹师,DB魔法师,二次猿
展开
-
旅行商问题:求最短Hamilton路径
题目传送门 最短Hamilton路径 内容引入 总所周知,旅行商问题是一个NP完全问题,即没有一个合适的算法来解决它,只能用朴素算法(也就是通常所说的暴力算法)去进行优化。 Hamilton路径的定义:在一张图中,从点0到点n-1不重不漏的恰好经过每一个点一次的路径。 解题思路 我们很容易联想到朴素算法,即dfs枚举n个点的全排列,计算路径长度去最小值,这样时间复杂度为O(n∗n!)O(n*n...原创 2020-04-15 18:25:50 · 3050 阅读 · 0 评论 -
洛谷p4479:单源最短路模板(使用邻接表+堆优化的dijkstra算法)
题目传送门 洛谷p4479 解题思路 因为数据量过大,无法使用普通的dijkstra算法以及邻接矩阵来存图,这里我们可以使用邻接表+堆优化的dijkstra算法,或者采用链式前向星+堆优化的dijkstra算法,这里给出后者的代码。 Code #include <bits/stdc++.h> using namespace std; const int INF = 0x3f3f3f...原创 2020-04-14 18:48:18 · 292 阅读 · 0 评论 -
多源最短路模板——hdu1874:畅通工程续(使用dijkstra、bellman-ford、spfa、dijkstra+堆优化)
题目传送门 hdu1874:畅通工程续 解题思路 这题因为数据量比较小,可以使用多种最短路算法来解决,是一道经典的模板题,下面附上floyd算法、dijkstra算法、Bellman-Ford 、spfa算法、以及dijkstra + heap优化的代码。 坑点:这题可能一个城市到另一个城市有多条路径,我们记录的时候,要记录最小的那条路径,不能记录最后的那条路径,解其他题目的时候也要注意。以及,...原创 2020-04-14 18:44:48 · 2096 阅读 · 0 评论