From 3d0cd92285198472e8ac575814ce092472b06e1f Mon Sep 17 00:00:00 2001 From: Joris van Rantwijk Date: Thu, 11 Jul 2024 21:24:32 +0200 Subject: [PATCH] fix --- README.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 6a31d1a..5e83a2c 100644 --- a/README.md +++ b/README.md @@ -25,10 +25,9 @@ cd python pip install . ``` -Using the algorithm is easy. +Using the package is easy. You describe the input graph by listing its edges. -Each edge is represented as a pair of vertex indices and the weight of the edge. - +Each edge is represented as a tuple of vertex indices and the weight of the edge. The example below finds a matching in a graph with 5 vertices and 5 edges. The maximum weight matching contains two edges and has total weight 11. @@ -50,7 +49,7 @@ I plan to eventually update the C++ code to implement the faster _O(n*m*log(n))_ The C++ code is self-contained and can easily be linked into an application. It is also reasonably efficient. -For serious use cases, [LEMON](http://lemon.cs.elte.hu/trac/lemon) may be a better choice. +For serious use cases, [LEMON](https://lemon.cs.elte.hu/trac/lemon) may be a better choice. LEMON is a C++ library that provides a very fast and robust implementation of maximum weighted matching and many other graph algorithms. To my knowledge, it is the only free software library that provides a high-quality @@ -111,7 +110,7 @@ However, earlier versions of the algorithm were invented and improved by several See the file [Algorithm.md](doc/Algorithm.md) for links to the most important papers. I used some ideas from the source code of the `MaxWeightedMatching` class in -[LEMON](http://lemon.cs.elto.hu/trac/lemon): +[LEMON](https://lemon.cs.elto.hu/trac/lemon): the technique to implement lazy updates of vertex dual variables, and the approach to re-use alternating trees after augmenting the matching.