This project is a comprehensive library designed to provide generic implementations of various data structures. It facilitates ready-made solutions for fundamental and advanced operations on both linear and non-linear data structures in an object-oriented manner. By leveraging generic programming, the library ensures compatibility with any data type, making it versatile and reusable across different applications.
The project adheres to object-oriented design principles, ensuring modularity, encapsulation, and extensibility.
-
Generic Implementations
- Supports various data types through the use of templates.
- Provides flexibility to apply the same implementation for multiple data types without modification.
-
Linear Data Structures
- Arrays
- Linked Lists (Singly, Doubly, Linear, Circular)
- Stacks
- Queues (Simple, Circular, Priority)
-
Fundamental Operations
- Insertion, Deletion, Traversal, and Searching for all supported structures.
-
Reusable and Modular
- Each data structure and its operations are encapsulated in classes.
- Modules can be independently maintained or extended.
-
Prerequisites:
- C++ Compiler (GCC, Clang, or any standard C++ compiler supporting C++11 or later).
- An Integrated Development Environment (IDE) like Visual Studio Code, CLion, or Code::Blocks (optional).
-
Steps to Install:
- Clone or download the repository.
- Open the project in your preferred IDE or set up the files in your working directory.
- Compile the code using a C++ compiler. For example:
g++ -o main main.cpp -std=c++11
-
Usage:
- Include the desired header file(s) from the library in your project.
- Create objects of the data structures and invoke operations as required.