This project is focused on implementing algorithms and data structures in C++, while following good software engineering practices, such as:
There are a few ways to get involved.
You can find more details regarding the steps above in the contribution guidelines, so be sure to check them out.
Create a new issue and we'll handle it from there. ?
✅ = has unit tests
Backtracking
Dynamic programming
Number theory
Searching
Sorting
String
Linked List
Queue
Set
Stack
Tree
To compile the source files, run make
from the C++
directory. Doing so will create executable binaries in the bin
directory.
To compile and run all tests, run make test
. This will compile all the tests (in the same way as described above) and will run them, displaying the results.
In order to run a specific test and see its results, run it manually from the bin
directory after calling make
. For example, this command (executed from bin
) would run only the unit tests for the N Queens algorithm:
$ ./n_queens
To remove all of the files created during compilation, run make clean
. You need not do this every time you make some changes to a file and want to recompile it. Just run make
and it will re-compile just those files whose contents have changed.
To see what happens in the background during compilation and testing, see the following files:
For more information on make
, see the GNU make Manual. For more information on CMake
, see the CMake Tutorial.
This project is actively maintained by @alxmjo, and inactively by @faheel.
This project is licensed under the terms of the MIT license.