Data Structures for Weighted Matching and Extensions to bb-matching and ff-factors

preprint2016arXivOpen access

Abstract

This paper shows the weighted matching problem on general graphs can be solved in time O(n(m+nlog⁡n))O(n(m + n\log n)) for nn and mm the number of vertices and edges, respectively. This was previously known only for bipartite graphs. The crux is a data structure for blossom creation. It uses a dynamic nearest-common-ancestor algorithm to simplify blossom steps, so they involve only back edges rather than arbitrary nontree edges. The rest of the paper presents direct extensions of Edmonds' blossom algorithm to weighted bb-matching and ff-factors. Again the time bound is the one previously known for bipartite graphs: for bb-matching the time is O(min⁡{b(V),nlog⁡n}(m+nlog⁡n))O(\min\{b(V),n\log n\}(m + n\log n)) and for ff-factors the time is O(min⁡{f(V),mlog⁡n}(m+nlog⁡n))O(\min\{f(V),m\log n\}( m + n\log n) ), where b(V)b(V) and f(V)f(V) denote the sum of all degree constraints. Several immediate applications of the ff-factor algorithm are given: The generalized shortest path structure of \cite{GS13}, i.e., the analog of the shortest path tree for conservative undirected graphs, is shown to be a version of the blossom structure for ff-factors. This structure is found in time O(∣N∣(m+nlog⁡n))O(|N|(m+n\log n)) for NN the set of negative edges (0<∣N∣<n0<|N|<n). A shortest TT-join is found in time O(n(m+nlog⁡n))O(n(m+n\log n)), or O(∣T∣(m+nlog⁡n))O(|T|(m+n\log n)) when all costs are nonnegative. These bounds are all slight improvements of previously known ones, and are simply achieved by proper initialization of the ff-factor algorithm.

Explore this paper’s authors, topics and related work.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.

Reviews 0

Write a reviewWrite

No reviews yet.

Discussion 0

Add a commentWrite

No comments yet.