Data Structures for Weighted Matching and Extensions to b-matching and f-factors

被引:25
|
作者
Gabow, Harold N. [1 ]
机构
[1] Univ Colorado, Dept Comp Sci, Boulder, CO 80309 USA
基金
美国国家科学基金会;
关键词
Matching; b-matching; f-factor; blossom; degree-constrained subgraph; shortest-paths tree; conservative graph; T-join; MINIMUM SPANNING-TREES; EFFICIENT IMPLEMENTATION; SENSITIVITY-ANALYSIS; ALGORITHM;
D O I
10.1145/3183369
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
This article shows the weighted matching problem on general graphs can be solved in time O(n(m + n log n)) for n and m 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 article presents direct extensions of Edmonds' blossom algorithm to weighted b-matching and f-factors. Again, the time bound is the one previously known for bipartite graphs: for b-matching the time is O(min{b(V), n log n} (m + n log n)) and for f-factors the time is O(min{f (V) , m log n}(m + n log n)), where b(V) and f (V) both denote the sum of all degree constraints. Several immediate applications of the f-factor algorithm are given: The generalized shortest path structure of Reference [19], i.e., the analog of the shortest-paths tree for conservative undirected graphs, is shown to be a version of the blossom structure for f-factors. This structure is found in time O(vertical bar N vertical bar(m + n log n)) for N, the set of negative edges (0 < vertical bar N vertical bar < n). A shortest T-join is found in time O(n(m + n log n)) or O(vertical bar T vertical bar(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 f-factor algorithm.
引用
收藏
页数:80
相关论文
共 50 条
  • [1] Algorithms for weighted matching generalizations I: Bipartite graphs, B-matching, and unweighted F-factors∗
    Gabow H.N.
    Sankowski P.
    SIAM Journal on Computing, 2021, 50 (03) : 440 - 486
  • [2] ALGORITHMS FOR WEIGHTED MATCHING GENERALIZATIONS I: BIPARTITE GRAPHS, b-MATCHING, AND UNWEIGHTED f-FACTORS
    Gabow, Harold N.
    Sankowski, Piotr
    SIAM JOURNAL ON COMPUTING, 2021, 50 (02) : 440 - 486
  • [3] Algebraic Algorithms for b-matching, Shortest Undirected Paths, and f-factors
    Gabow, Harold N.
    Sankowski, Piotr
    2013 IEEE 54TH ANNUAL SYMPOSIUM ON FOUNDATIONS OF COMPUTER SCIENCE (FOCS), 2013, : 137 - 146
  • [4] A combinatoric interpretation of dual variables for weighted matching and f-factors
    Gabow, Harold N.
    THEORETICAL COMPUTER SCIENCE, 2012, 454 : 136 - 163
  • [5] Diverse Weighted Bipartite b-Matching
    Ahmed, Faez
    Dickerson, John P.
    Fuge, Mark
    PROCEEDINGS OF THE TWENTY-SIXTH INTERNATIONAL JOINT CONFERENCE ON ARTIFICIAL INTELLIGENCE, 2017, : 35 - 41
  • [6] EFFICIENT APPROXIMATION ALGORITHMS FOR WEIGHTED b-MATCHING
    Khan, Arif
    Pothen, Alex
    Patwary, Md. Mostofa Ali
    Satish, Nadathur Rajagopalan
    Sundaram, Narayanan
    Manne, Fredrik
    Halappanavar, Mahantesh
    Dubey, Pradeep
    SIAM JOURNAL ON SCIENTIFIC COMPUTING, 2016, 38 (05): : S593 - S619
  • [7] Near optimal algorithms for online maximum edge-weighted b-matching and two-sided vertex-weighted b-matching
    Ting, H. F.
    Xiang, Xiangzhong
    THEORETICAL COMPUTER SCIENCE, 2015, 607 : 247 - 256
  • [8] F-FACTORS OF GRAPHS - GENERALIZED MATCHING PROBLEM
    MUHLBACHER, J
    INFORMATION PROCESSING LETTERS, 1979, 8 (04) : 207 - 214
  • [9] Group-Aware Weighted Bipartite B-Matching
    Chen, Cheng
    Chester, Sean
    Srinivasan, Venkatesh
    Wu, Kui
    Thomo, Alex
    CIKM'16: PROCEEDINGS OF THE 2016 ACM CONFERENCE ON INFORMATION AND KNOWLEDGE MANAGEMENT, 2016, : 459 - 468
  • [10] ALGORITHMS FOR WEIGHTED MATCHING GENERALIZATIONS II: f-FACTORS AND THE SPECIAL CASE OF SHORTEST PATHS
    Gabow, Harold N.
    Sankowski, Piotr
    SIAM JOURNAL ON COMPUTING, 2021, 50 (02) : 555 - 601