Skip to content

Latest commit

 

History

History
66 lines (49 loc) · 1.82 KB

File metadata and controls

66 lines (49 loc) · 1.82 KB

C++ Basic Data Structures and Algorithms

This repository contains implementations of basic data structures and algorithms in C++ along with corresponding test cases.

Contents

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

Getting Started

Prerequisites

  • C++ compiler with C++17 support (g++ or clang++)
  • Make utility
  • Bash shell (for test scripts)

Running Tests

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-string

Available Modules

Here are all the available modules you can test:

  1. cpp-23-24-big-integer
  2. cpp-23-24-deque
  3. cpp-23-24-factorization
  4. cpp-23-24-geometry
  5. cpp-23-24-matrix
  6. cpp-23-24-pointwise-sum
  7. cpp-23-24-python-range
  8. cpp-23-24-ring-buffer
  9. cpp-23-24-smart-pointers
  10. cpp-23-24-string
  11. cpp-23-24-signal
  12. cpp-23-24-which-triangle

Contributing

Contributions are welcome! Please ensure that:

  1. Any new implementations follow the existing code style
  2. Tests are included for new functionality
  3. Documentation is updated accordingly