A C++ library for generating tournament schedules using Qt 6. Based on the edge coloring algorithm for creating round-robin tournament schedules.
- Generate schedules for any even number of teams
- Support for single or double round-robin tournaments
- Efficient algorithm based on graph theory
- Modern C++17 with Qt 6 integration
- Qt 6.2 or later
- CMake 3.16 or later
- C++17 compatible compiler
# Configure
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release
# Build
cmake --build build
# Run example
./build/spielplan_exampleThis project includes VSCode tasks for building and debugging:
Ctrl+Shift+P→ "Tasks: Run Task" → "cmake-build"F5to debug the example application
#include "spielplan.h"
QList<int> teams = {1, 2, 3, 4, 5, 6};
auto schedule = Spielplan::getOrganizedMatchDaysFromTeamList(teams, false);
// Process schedule...The schedule generation is based on the edge coloring algorithm from: http://www-i1.informatik.rwth-aachen.de/~algorithmus/algo36.php
BSD License - see original implementation by Andy Theiler
- Original script: Andy Theiler [email protected]
- Qt port: Thomas Butzbach [email protected]
- GitHub: https://github.com/thomasbutzbach/SpielplanQtPort