This repository contains implementations of basic data structures and algorithms in C++ along with corresponding test cases.
The repository includes implementations of the following:
- Big Integer: Arbitrary precision integer operations
- Deque: Double-ended queue implementation
- Factorization: Prime factorization algorithms
- Geometry: Basic geometric algorithms and structures
- Matrix: Matrix operations and algorithms
- Pointwise Sum: Vector summation operations
- Python-like Range: Range implementation similar to Python's
- Ring Buffer: Circular buffer implementation
- Smart Pointers: Custom smart pointer implementations
- String: Custom string class with common operations
- Signal Processing: Basic signal processing utilities
- Triangle Classification: Triangle type determination
- C++ compiler with C++17 support (g++ or clang++)
- Make utility
- Bash shell (for test scripts)
Each implementation comes with its own test suite. To run tests for a specific module:
./test.sh <module-name>For example, to test the string implementation:
./test.sh cpp-23-24-stringHere are all the available modules you can test:
cpp-23-24-big-integercpp-23-24-dequecpp-23-24-factorizationcpp-23-24-geometrycpp-23-24-matrixcpp-23-24-pointwise-sumcpp-23-24-python-rangecpp-23-24-ring-buffercpp-23-24-smart-pointerscpp-23-24-stringcpp-23-24-signalcpp-23-24-which-triangle
Contributions are welcome! Please ensure that:
- Any new implementations follow the existing code style
- Tests are included for new functionality
- Documentation is updated accordingly