Joris van Rantwijk
|
36be21800b
|
Fix random graph generation
The previous implementation was biased towards higher vertex indices.
|
2024-12-07 01:50:27 +01:00 |
Joris van Rantwijk
|
8ed1d42710
|
Fix C++ unit test module names
|
2024-11-28 23:08:21 +01:00 |
Joris van Rantwijk
|
8eb6b77523
|
Update README, section repository structure
|
2024-11-26 20:07:23 +01:00 |
Joris van Rantwijk
|
43502512ee
|
Update README wrt C++ run time
|
2024-11-26 18:50:44 +01:00 |
Joris van Rantwijk
|
d4e86e9dcc
|
make clean at start of C++ test script
|
2024-11-26 18:48:26 +01:00 |
Joris van Rantwijk
|
53e5ec618e
|
gitignore compiled C++ code
|
2024-11-26 11:18:14 +01:00 |
Joris van Rantwijk
|
3914ea15a7
|
Add Python 3.13 in tox config
|
2024-11-26 11:17:37 +01:00 |
Joris van Rantwijk
|
d539e5cfbb
|
Add C++ testcases from Python
|
2024-11-24 14:59:58 +01:00 |
Joris van Rantwijk
|
f652a08d43
|
Rename mwmatching.h to mwmatching.hpp
|
2024-11-24 14:25:43 +01:00 |
Joris van Rantwijk
|
0f18b7b05a
|
Split datastruct.h
Split into separate files concatenable_queue.hpp and priority_queue.hpp.
Move classes into namespace.
Separate unit testse.
|
2024-11-24 14:22:26 +01:00 |
Joris van Rantwijk
|
087799cdca
|
Minor comment cleanup
|
2024-11-24 13:59:28 +01:00 |
Joris van Rantwijk
|
02917b2caf
|
Minor code and comment cleanups
|
2024-11-23 22:59:40 +01:00 |
Joris van Rantwijk
|
f0773eb84b
|
Clean up code formatting
|
2024-11-22 23:29:10 +01:00 |
Joris van Rantwijk
|
1e6f2a11c4
|
Simplify expand_t_blossom()
|
2024-11-22 20:12:25 +01:00 |
Joris van Rantwijk
|
b5ccbdeda4
|
Remove expand_unlabeled_blossom()
|
2024-11-21 21:46:39 +01:00 |
Joris van Rantwijk
|
3815335a9f
|
Keep alternating trees between stages in C++
|
2024-11-20 21:10:14 +01:00 |
Joris van Rantwijk
|
082397ef80
|
Minor cleanup
|
2024-11-19 21:25:05 +01:00 |
Joris van Rantwijk
|
ab691813b3
|
The C++ code should now run in O(n*m*log(n))
|
2024-11-17 21:19:15 +01:00 |
Joris van Rantwijk
|
105679c986
|
Use iterator to delete expanded blossom
|
2024-11-17 20:46:58 +01:00 |
Joris van Rantwijk
|
7683f891d5
|
Use priority queues for delta2
|
2024-11-17 19:18:57 +01:00 |
Joris van Rantwijk
|
22251e64e8
|
Maintain concatenable queue for each blossom
|
2024-11-17 12:02:40 +01:00 |
Joris van Rantwijk
|
5b5c107a5c
|
Initialize ConcatenableQueue name in constructor
|
2024-11-16 23:41:29 +01:00 |
Joris van Rantwijk
|
e8020f3e58
|
Use priority queue for delta4
|
2024-11-16 20:23:51 +01:00 |
Joris van Rantwijk
|
2271df1897
|
Lazy updates of blossom duals
|
2024-11-16 14:23:13 +01:00 |
Joris van Rantwijk
|
228da75495
|
Lazy updates of vertex duals
|
2024-11-16 10:32:35 +01:00 |
Joris van Rantwijk
|
5500750c13
|
Reorganize code that handles labeling
|
2024-11-14 23:31:11 +01:00 |
Joris van Rantwijk
|
39eaea451e
|
Minor code rearrangement
|
2024-11-10 00:10:26 +01:00 |
Joris van Rantwijk
|
7ea1562cc7
|
Use tight edges only during delta steps
|
2024-11-09 21:39:52 +01:00 |
Joris van Rantwijk
|
55a98238aa
|
Implement heap-based tracking for delta3
|
2024-11-09 00:11:07 +01:00 |
Joris van Rantwijk
|
b17ca1a364
|
Require signed type for edge weight
|
2024-11-08 20:30:53 +01:00 |
Joris van Rantwijk
|
67ca294840
|
Rework data structures
|
2024-11-08 18:38:20 +01:00 |
Joris van Rantwijk
|
efb238ff8e
|
C++ datastructures for O(n*m*log(n))
|
2024-11-02 09:43:33 +01:00 |
Joris van Rantwijk
|
e103a493fc
|
Update Algorithm.md
|
2024-07-28 11:38:05 +02:00 |
Joris van Rantwijk
|
4670cf1dca
|
Add testcases to force big values for dual/slack
|
2024-07-28 11:38:05 +02:00 |
Joris van Rantwijk
|
c731c32473
|
Separate function top_level_blossom()
|
2024-07-21 15:32:41 +02:00 |
Joris van Rantwijk
|
e8490010d6
|
Implement ConcatenableQueue as 2-3 tree
|
2024-07-21 15:32:41 +02:00 |
Joris van Rantwijk
|
dc8cdae225
|
Minor simplification in UnionFindQueue
|
2024-07-21 15:32:41 +02:00 |
Joris van Rantwijk
|
e2f5b63a01
|
Fix README
|
2024-07-11 21:28:41 +02:00 |
Joris van Rantwijk
|
6bf04df77b
|
Update README
|
2024-07-11 21:27:01 +02:00 |
Joris van Rantwijk
|
99f8a2d822
|
Add benchmark script
|
2024-07-10 21:01:21 +02:00 |
Joris van Rantwijk
|
ed70402310
|
Separate C++ test script
|
2024-07-10 20:52:59 +02:00 |
Joris van Rantwijk
|
54f59db753
|
Add tox.ini for Python testing
|
2024-07-10 20:19:12 +02:00 |
Joris van Rantwijk
|
c58374e6fb
|
Remove debug checks of alternating tree
|
2024-07-09 21:18:53 +02:00 |
Joris van Rantwijk
|
658a393bb8
|
Test script for Python code
|
2024-07-09 21:10:38 +02:00 |
Joris van Rantwijk
|
c19fa9a76c
|
Add pyproject.toml
|
2024-07-09 21:10:38 +02:00 |
Joris van Rantwijk
|
d3475834ab
|
Add from __future__ import annotations
This makes the code work on Python versions 3.7 and 3.8.
|
2024-07-09 21:10:38 +02:00 |
Joris van Rantwijk
|
147640329f
|
Restructure Python code as package
|
2024-07-09 21:10:38 +02:00 |
Joris van Rantwijk
|
f2e8ca1357
|
Remove redundant type annotations "int|float"
|
2024-07-09 21:10:38 +02:00 |
Joris van Rantwijk
|
b2d4de41f9
|
Add __slots__ in datastruct.py
It does not make a clear difference for performance.
But it should at least reduce memory usage a bit.
|
2024-07-09 21:10:38 +02:00 |
Joris van Rantwijk
|
d2debb6d6f
|
Minor changes to docstrings
|
2024-07-09 21:10:38 +02:00 |