Skip to content

Mahmoud-Abd-Elrazek/Data-Structures

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

Introduction

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.

Linear data Structures

  1. Stack

    • Array [dynamic/static] Implementation
    • Linked List Implementation
    • Applications: Postfix Evaluation, Prefix Evaluation
    • Implement Stack Using Queues
  2. Queue

    • Array [dynamic/static]Implementation
    • Linked List Implementation
    • Implement Queue Using Stacks
  3. Deque

    • Array [dynamic/static]Implementation
    • Linked List Implementation
  4. Linked List

    • Singly Linked List
    • Doubly Linked List

Non-linear Data Structures

  1. 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
  2. Graph

    • Edg List
    • Adjacency Matrix
    • Adjacency List
    • Common operations: insertion, deletion, traversal (pre-order, in-order, post-order, level-order), and searching

Installation

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

About

This repository contains a collection of essential data structures implemented in C and C++, designed to provide clear, efficient, and well-documented code for both linear and non-linear data structures. It includes implementations for trees such as Binary Tree, Binary Search Tree, AVL Tree, M-way Search Tree, B Tree, and B+ Tree, as well as graph.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages