The Algorithm Library repository is a collection of algorithms written in C++. The public interface is found in include. The implementations are found in subfolders of src.
The interface and implementations are heavily dependent on Eigen.
It is a personal project in continous development.
Benchmarks are implemented using Google benchmark and are located here.
Unit tests are implemented using Google test and are located here.
A Python library that wraps the C++ algorithms using pybind11 is found here. With this wrapper library one can use the algorithms in Python. Note that the library requires C++17.
CMake is used as build system and the project setup is inspired by ModernCppStarter.
The code in this repository has been developed and tested primarily in VS Code on Linux. It has at some point been compiled with a GCC, Clang and MSVC compiler, but since this is a personal project there is no guarantee it will compile with every setup at all times.