English

A Linear-time Algorithm for Integral Multiterminal Flows in Trees

Data Structures and Algorithms 2016-11-29 v1

Abstract

In this paper, we study the problem of finding an integral multiflow which maximizes the sum of flow values between every two terminals in an undirected tree with a nonnegative integer edge capacity and a set of terminals. In general, it is known that the flow value of an integral multiflow is bounded by the cut value of a cut-system which consists of disjoint subsets each of which contains exactly one terminal or has an odd cut value, and there exists a pair of an integral multiflow and a cut-system whose flow value and cut value are equal; i.e., a pair of a maximum integral multiflow and a minimum cut. In this paper, we propose an O(n)O(n)-time algorithm that finds such a pair of an integral multiflow and a cut-system in a given tree instance with nn vertices. This improves the best previous results by a factor of Ω(n)\Omega (n). Regarding a given tree in an instance as a rooted tree, we define O(n)O(n) rooted tree instances taking each vertex as a root, and establish a recursive formula on maximum integral multiflow values of these instances to design a dynamic programming that computes the maximum integral multiflow values of all O(n)O(n) rooted instances in linear time. We can prove that the algorithm implicitly maintains a cut-system so that not only a maximum integral multiflow but also a minimum cut-system can be constructed in linear time for any rooted instance whenever it is necessary. The resulting algorithm is rather compact and succinct.

Keywords

Cite

@article{arxiv.1611.08803,
  title  = {A Linear-time Algorithm for Integral Multiterminal Flows in Trees},
  author = {Mingyu Xiao and Hiroshi Nagamochi},
  journal= {arXiv preprint arXiv:1611.08803},
  year   = {2016}
}

Comments

17 pages, 6 figures, ISAAC2016

R2 v1 2026-06-22T17:05:18.082Z