This repository features a comprehensive collection of core data structures, implemented in both C and C++, with a focus on clarity and efficiency. As a computer science student, I've aimed to provide well-documented implementations of both linear and non-linear data structures, making this repository a valuable resource for those looking to understand the inner workings of these fundamental concepts. It includes C++ implementations for a variety of tree data structures, such as Binary Tree, Binary Search Tree, AVL Tree, M-way Search Tree, B Tree, and B+ Tree, offering a complete guide to working with hierarchical data. The repository also includes graph data structures, along with key algorithms such as DFS and BFS, allowing users to explore the representation and traversal of graphs. Additionally, it covers linear data structures, including stack, queue, and linked lists, with both array-based and linked implementations. This collection is designed to be a practical reference for students and professionals alike, who seek to deepen their understanding of data structures.
-
Stack
- Array [dynamic/static] Implementation
- Linked List Implementation
- Applications: Postfix Evaluation, Prefix Evaluation
- Implement Stack Using Queues
-
Queue
- Array [dynamic/static]Implementation
- Linked List Implementation
- Implement Queue Using Stacks
-
Deque
- Array [dynamic/static]Implementation
- Linked List Implementation
-
Linked List
- Singly Linked List
- Doubly Linked List
-
Tree
- Binary Tree Implementation
- Binary Search Tree BST
- AVL Tree
- Binary Heap (Min,and Max heap)
- Trie
- Red Black Tree 'soon'
- B Tree 'soon'
- B+ Tree 'soon'
- Common operations: insertion, deletion, traversal (pre-order, in-order, post-order, level-order), and searching
-
Graph
- Edg List
- Adjacency Matrix
- Adjacency List
- Common operations: insertion, deletion, traversal (pre-order, in-order, post-order, level-order), and searching
Clone the repository to your local machine using the following command:
git clone https://github.com/Mahmoud-Abd-Elrazek/Data-Structures.git
cd Data-Structures