This group contains the algorithms for calculating matchings in graphs. The general matching problem is finding a subset of the edges for which each node has at most one incident edge.
There are several different algorithms for calculate matchings in graphs. The goal of the matching optimization can be finding maximum cardinality, maximum weight or minimum cost matching. The search can be constrained to find perfect or maximum cardinality matching.
The matching algorithms implemented in LEMON:
Classes | |
class | MaxMatching< GR > |
Maximum cardinality matching in general graphs. More... | |
class | MaxWeightedMatching< GR, WM > |
Weighted matching in general graphs. More... | |
class | MaxWeightedPerfectMatching< GR, WM > |
Weighted perfect matching in general graphs. More... | |
class | MaxWeightedMatching< GR, WM >::BlossomIt |
Iterator for obtaining the nodes of a blossom. More... | |
class | MaxWeightedPerfectMatching< GR, WM >::BlossomIt |
Iterator for obtaining the nodes of a blossom. More... | |
Files | |
file | matching.h |
Maximum matching algorithms in general graphs. | |