摘要: 中国邮递员问题: 这个问题就是要找到所有的奇数点,然后两个两个的配对(你的图不是一笔画问题那么它一定有偶数个奇数点)配对后就可以随意划线连接。连接后将重复的边去掉,得到一个欧拉图。计算添加的线的权值,进行调整,直到权值最小。(全靠挨个试试,要有耐心奥) 阅读全文
posted @ 2018-06-10 16:01 独孤东方朔 阅读(569) 评论(0) 推荐(0) 编辑
摘要: 这个问题真是烧脑。不过弄懂了最后。 这个问题中构建的图是单位运价和容量的网络。 首先把费用提出来单独构建一个图,找到最短路经。然后用这条路径上的最下容量来调整这条路上的流量。调整过后,重新构图就是要把最短路的路径加上反向弧,利用公式当正向弧的时候流量小于容量则价钱不变,容量等于流量则价钱为无穷尽去掉 阅读全文
posted @ 2018-06-10 15:46 独孤东方朔 阅读(391) 评论(0) 推荐(0) 编辑
摘要: 增广链的定义是:正向弧是一些非饱和弧,反向弧是一些非零流量的弧 进行最大流标号的原理就是利用了增广链的性质,找到正向弧的容量和流量关系,以及反向弧的容量和流量关系,然后利用L(f)对流量进行调整,使增广链消失,产生最大流 标号开始: 从起始点开始:找到正向的弧,弧的容量要大于流量才可进行标号操作,标 阅读全文
posted @ 2018-06-10 15:36 独孤东方朔 阅读(3097) 评论(0) 推荐(0) 编辑
摘要: c(f)表示容量 v(f)表示流量; 理解: 根据定义来看截集就是吧图分成了两部分,截集就是这两部分连接的多个两端点的连接线的集合,即连接两个集合的弧线的集合。 在同一个图中可以存在很多截集,因为你可以根据要求把图分成含点数量不同的两个集合。 而容量就是这些连线弧的容量之和。 定理: 最大流量最小截 阅读全文
posted @ 2018-06-10 14:16 独孤东方朔 阅读(3577) 评论(0) 推荐(0) 编辑
摘要: Dijkstra算法: 参数介绍: S:图中点的集合 P:从当前点到起始点的最短路径。 T:表示当前点到前一个点的距离+P(前一个点的最短距离) λ:记录了改点前一个最短距离点 算法: 1.p=0,T=+无穷,判断点集是否已等于有效点集个数,未满足跳到第二步 2.从出发点开始向下找相邻的点,修改T标 阅读全文
posted @ 2018-06-10 13:21 独孤东方朔 阅读(480) 评论(0) 推荐(0) 编辑
摘要: 基础知识: 寻找图的最小支撑树主要方法有:避圈法和破圈法 避圈法:要找到最小的边,然后以这个边两端为起点向图的周围扩展,找到下一条边,找到的边不能和已找到的边构成回路。 注意可以从所找到的边的两边找,一个端点找到了尽头,再从另一个端点找。 破圈法:就是找到最小边所在的一个任意圈,把圈里的最大边去掉, 阅读全文
posted @ 2018-06-10 11:20 独孤东方朔 阅读(3301) 评论(0) 推荐(0) 编辑