摘要: HDU 1878 阅读全文
posted @ 2019-08-01 16:38 op-z 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 拓扑排序 就系按图中节点度的个数来排序,入度少优先 存图时用数组统计每个节点的入度,用队列/数组模拟,入度为0的先入队,遍历相邻节点,入度--,入度为0的再入队,同时存点,直至队列为空 HDU 4857 逃生 一般拓扑排序都按字典序最小输出,这里要求数字最小先输出 先反向建图,改用优先队列,最后逆序 阅读全文
posted @ 2019-08-01 15:50 op-z 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 用到A* 推两篇博客 https://blog.csdn.net/Z_Mendez/article/details/47057461 https://blog.csdn.net/v_july_v/article/details/6177380 板子 阅读全文
posted @ 2019-08-01 15:43 op-z 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 链式前向星存图,遍历所有边,更新最短距离(队列实现,可判断负环 hdu 2544 阅读全文
posted @ 2019-08-01 14:38 op-z 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 任意两点间最短距离 每两点间遍历所有节点,更新最短距离 复杂度O(n^3) 板子 阅读全文
posted @ 2019-08-01 14:37 op-z 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 板子 阅读全文
posted @ 2019-08-01 14:32 op-z 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 由最小生成树T进行一次可行交换得到的新的生成树的集合 称为T的邻集 N(T)(即 最小生成树的某两节点间有重边 可替换 或 原图中存在其它边可重新连接这些节点)找到可替换边中权值最小的那条 替换即可实现:存最小生成树上每两点间最大距离,遍历每条不在最小生成树上的边,更新 以这条边 替换 该边两端节点 阅读全文
posted @ 2019-08-01 13:26 op-z 阅读(127) 评论(0) 推荐(0) 编辑
摘要: kruskal算法 前向星+并查集 需排序(加边,还有一种加点的prim算法,不惯用,就不更了 排序后每次找权值最小的两节点组成的边,加入树,通过并查集确定公共祖先,若某边加入会出现环,跳过,直至所有点都加入树,该树即为最小生成树 板子 POJ 2421 Constructing Roads 模板题 阅读全文
posted @ 2019-08-01 12:24 op-z 阅读(140) 评论(0) 推荐(0) 编辑