Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mohamed-adel23/data-structures

The Implementation of some Data Structures.
https://github.com/mohamed-adel23/data-structures

Last synced: 2 days ago
JSON representation

The Implementation of some Data Structures.

Awesome Lists containing this project

README

        

# Data Structures and Algorithms (DSA)
Welcome to the comprehensive repository dedicated to exploring and implementing fundamental data structures and algorithms.

## What is Vector?
***Vector*** is a dynamic array that can resize itself automatically when elements are inserted or removed, and it is a *physical DS*, and here are some of key points:
- **Dynamic Resizing:** Unlike static arrays, vectors can grow or shrink in size dynamically as elements are added or removed. This makes them more flexible and convenient for managing collections of items.
- **Random Access:** Vectors support efficient random access to elements. This means you can access any element in the vector in constant time using its index, just like with arrays.
- **Continuous Memory:** Internally, vectors store their elements in a contiguous block of memory, similar to arrays. This layout enables efficient access and traversal of elements.
- **Standard Library Container:** Vectors are part of the C++ Standard Template Library (STL), making them readily available for use in C++ programs without the need for additional setup or dependencies.
> You can check the code in the file `vector.cpp`

## What is Singly LinkedList (SLL)?
***SLL*** is a *physical DS* consisting of nodes where each node contains two parts: data and a pointer to the next node in the sequence.
> You can check the code in the file `SinglyLinkedlist.cpp`

## What is Doubly LinkedList (DLL)?
***DLL*** is a *physical DS* consisting of nodes where each node contains three parts: a pointer to the previous node, data, and a pointer to the next node in the sequence.
> You can check the code in the file `DoublyLinkedlist.cpp`