Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/amaitou/datastructures

Discover sorting algorithms and core data structures implemented in multiple languages in my repository. Perfect for beginners and experienced developers, this collection provides a concise, hands-on experience.
https://github.com/amaitou/datastructures

algorithms cpp20 data-structures javascript php7 python3

Last synced: about 2 months ago
JSON representation

Discover sorting algorithms and core data structures implemented in multiple languages in my repository. Perfect for beginners and experienced developers, this collection provides a concise, hands-on experience.

Awesome Lists containing this project

README

        

----------------
![1_2rKGJ6h1regwmfMcty3SLw](https://user-images.githubusercontent.com/49293816/188543586-c9282564-6ab4-45d6-a305-50694f3e616d.png)

----------------

# Data Structures & Algorithms

- ### **Data Structures**

Data structures are ways to organize, store, and manage data in a computer so that it can be accessed and modified efficiently. They are the foundation for designing efficient algorithms and play a crucial role in computer science.

Common data structures include:

- **Arrays**: A collection of elements identified by index or key.

- **Linked Lists**: A linear collection of data elements where each element points to the next.

- **Stacks**: A collection of elements that follows the Last In First Out (LIFO) principle.

- **Queues**: A collection of elements that follows the First In First Out (FIFO) principle.

- **Trees**: A hierarchical structure with nodes, with a root node and child nodes forming a parent-child relationship.

- **Graphs**: A collection of nodes connected by edges.
Hash Tables: A data structure that provides fast access to elements by using a hash function to map keys to values.

- ### **Algorithms**

Algorithms are step-by-step procedures or formulas for solving a problem or completing a task. In computer science, an algorithm is a set of instructions that take an input and transform it into an output through a series of well-defined steps.

Key aspects of algorithms include:

- **Correctness**: Ensuring the algorithm produces the correct output for all possible inputs.

- **Efficiency**: Minimizing the time and space resources required to execute the algorithm.

- **Complexity**: Analyzing the time complexity (how the runtime increases with input size) and space complexity (how the memory usage increases with input size).

In this repository, I tried to implement a few of the data structures and some searching and sorting algorithms using different programming and scripting languages, feel free to check each one of them

# Direct Access

- [Tree Data Structure](https://github.com/amaitou/DataStructures/tree/main/tree)
- [Stack Data Structure](https://github.com/amaitou/DataStructures/tree/main/stack)
- [Linked List Data Structure](https://github.com/amaitou/DataStructures/tree/main/linkedlist)
- [Queue Data Structure](https://github.com/amaitou/DataStructures/tree/main/queue)
- [Sorting ALgorithms](https://github.com/amaitou/DataStructures/tree/main/sort)
- [Searching ALgorithms](https://github.com/amaitou/DataStructures/tree/main/search)

## Contact Me

* [Twitter][_1]

[_1]: https://twitter.com/amait0u