基于流网络大权值子集选取算法探究.pdfVIP

  • 0
  • 0
  • 约1.18千字
  • 约 1页
  • 2026-08-31 发布于北京
  • 举报

基于流网络大权值子集选取算法探究.pdf

开发计划解题报告

福建师大附中

问题描述

本题的数学描述是:给定一有向图G(V,E),图中每个顶点有一权值(或正或负)。求

顶点集的一个子集V’,满足对任意弧〈u,v〉∈E,若v∈V’,则u∈V’,使得V’中所有顶点

的权值之和最大。

算法分析

这道题用搜索或动态规划解,算法都是指数级的。如果采用流网络方法解题,则可以在

3

O(n)的时间内完成,显然它的优势是巨大的。流网络模型的构造方法如下:首先根据项目之

间的依赖关系建立n个顶点的有向图,若项目i必须依赖于项目j,则在顶点i和顶点j之间

加入一条弧。然后把这个有向图改造成流网络,原图中每条边的容量为无穷大。另外加入源

s与汇t,对于每个项目i,若它的预算C为正(),则在顶点i与t之间加入一条容量为

C的边;若它的预算C为负(支出),则在s与顶点i之间加入一条容量为-C的边。然后求

这个网络的最大流f和最小割(S,T)。累计所有项目的正预算之和r,r-f就是最大利润;T

中的顶点就表示最优方案

文档评论(0)

1亿VIP精品文档

相关文档