diff --git a/jgalgo-bench/src/main/java/com/jgalgo/MaximumMatchingWeightedBench.java b/jgalgo-bench/src/main/java/com/jgalgo/MaximumMatchingWeightedBench.java index 2dc6a798ca..330289c5b7 100644 --- a/jgalgo-bench/src/main/java/com/jgalgo/MaximumMatchingWeightedBench.java +++ b/jgalgo-bench/src/main/java/com/jgalgo/MaximumMatchingWeightedBench.java @@ -99,6 +99,11 @@ public void MaximumMatchingWeightedGabow1990(Blackhole blackhole) { benchMaximumMatchingWeighted(getAlgo("Gabow1990"), blackhole); } + @Benchmark + public void MaximumMatchingWeightedBlossomV(Blackhole blackhole) { + benchMaximumMatchingWeighted(getAlgo("BlossomV"), blackhole); + } + @Benchmark public void MaximumMatchingWeightedGabow1990SimplerPerfect(Blackhole blackhole) { benchMaximumMatchingWeightedPerfect(getAlgo("Gabow1990Simpler"), blackhole); diff --git a/jgalgo-core/src/main/java/com/jgalgo/MaximumMatching.java b/jgalgo-core/src/main/java/com/jgalgo/MaximumMatching.java index 4b7594858d..901fc13fe9 100644 --- a/jgalgo-core/src/main/java/com/jgalgo/MaximumMatching.java +++ b/jgalgo-core/src/main/java/com/jgalgo/MaximumMatching.java @@ -90,6 +90,8 @@ public MaximumMatching build() { return new MaximumMatchingWeightedGabow1990(); if ("Gabow1990Simpler".equals(impl)) return new MaximumMatchingWeightedGabow1990Simpler(); + if ("BlossomV".equals(impl)) + return new MaximumMatchingWeightedBlossomV(); throw new IllegalArgumentException("unknown 'impl' value: " + impl); } if (cardinality) { @@ -97,7 +99,7 @@ public MaximumMatching build() { : new MaximumMatchingCardinalityGabow1976(); } else { return isBipartite ? new MaximumMatchingWeightedBipartiteHungarianMethod() - : new MaximumMatchingWeightedGabow1990Simpler(); + : new MaximumMatchingWeightedBlossomV(); } }