跳转到主要内容

Flow Network Python 库

项目描述

Flow Network

网络流的工业级应用

Release Drafter Upload Python Package

使用 Dinic 和朴素费用流,算法来自 DuckKnowNothing - 网络流

支持平台

在尝试了各种方法之后,GitHub Actions 在 Windows 平台下始终无法正确编译 C++,所以放弃支持 Windows 平台

  • Linux
  • macOS

安装

pip install flow-network

样例代码

from flow_network import MaximumFlow, MinimumCostFlow

mf = MaximumFlow(2)  # 创建一个包含 2 个点的网络流对象,下标从 0 开始
mf.add_edge(0, 1, 3)  # 添加一条从 0 指向 1 的边,容量为 3
result = mf.run(0, 1)  # 指定源点为 0,汇点为 1,跑最大流 & 最小割
print(result)  # 3

for edge in mf.edges:  # 遍历每条边
    print(edge.u, edge.v, edge.flow, edge.capacity)  # 边的起点、终点、流过的流量、最大容量

mcf = MinimumCostFlow(2)  # 创建一个包含 2 个点的费用流对象,下标从 0 开始
mcf.add_edge(0, 1, 3, 2)  # 添加一条从 0 指向 1 的边,容量为 3,单位流量的费用为 2
flow, cost = mcf.run(0, 1)  # 指定源点为 0,汇点为 1,跑最大流 & 最小费
print(flow, cost)  # 3 6

for edge in mcf.edges:
    print(edge.u, edge.v, edge.flow, edge.capacity, edge.cost)  # 边的起点、终点、流过的流量、最大容量、单位流量的费用

测试代码

tests.py

参考

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

flow-network-0.1.13.tar.gz (63.4 kB 查看哈希)

上传时间:

构建分布

flow_network-0.1.13-cp39-cp39-manylinux2010_x86_64.whl (640.4 kB 查看哈希值)

上传时间 CPython 3.9 manylinux: glibc 2.12+ x86-64

flow_network-0.1.13-cp39-cp39-manylinux1_x86_64.whl (640.4 kB 查看哈希值)

上传时间 CPython 3.9

flow_network-0.1.13-cp38-cp38-win_amd64.whl (100.5 kB 查看哈希值)

上传时间 CPython 3.8 Windows x86-64

flow_network-0.1.13-cp38-cp38-manylinux2010_x86_64.whl (635.1 kB 查看哈希值)

上传时间 CPython 3.8 manylinux: glibc 2.12+ x86-64

flow_network-0.1.13-cp38-cp38-manylinux1_x86_64.whl (635.1 kB 查看哈希值)

上传时间 CPython 3.8

flow_network-0.1.13-cp38-cp38-macosx_10_9_x86_64.whl (97.5 kB 查看哈希值)

上传时间 CPython 3.8 macOS 10.9+ x86-64

flow_network-0.1.13-cp37-cp37m-manylinux2010_x86_64.whl (637.0 kB 查看哈希值)

上传时间 CPython 3.7m manylinux: glibc 2.12+ x86-64

flow_network-0.1.13-cp37-cp37m-manylinux1_x86_64.whl (637.0 kB 查看哈希值)

上传时间 CPython 3.7m

flow_network-0.1.13-cp36-cp36m-manylinux2010_x86_64.whl (636.0 kB 查看哈希值)

上传时间 CPython 3.6m manylinux: glibc 2.12+ x86-64

flow_network-0.1.13-cp36-cp36m-manylinux1_x86_64.whl (636.0 kB 查看哈希值)

上传时间 CPython 3.6m

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面