This repository contains introductions and examples of many popular data structures and algorithms.
Each data structures and algorithm has its own separate article with related explanations and links for further reading (including ones to YouTube videos).
A data structure is a data organization, management, and storage format that is usually chosen for efficient access to data. More recisely, a data structure is a collection of data values, the relationships among them, and the functions or operations that can be applied to the data.
Concept | Programming Languages |
---|---|
Basic Concepts | |
Big-O |
py
ts
|
Bitwise |
cpp
|
Basic Data Structures | |
Array |
py
ts
|
String | |
Linked List |
ts
|
Stack |
ts
|
Queue |
ts
|
Set |
ts
|
Hash Table |
cpp
|
Tree |
cpp
|
Algorithms | |
Sorting |
cpp
|
Searching | |
Brute force, Backtracking |
cpp
|
Greedy | |
Range Queries (prefix sum) |
cpp
|
Dynamic Programming | |
Dynamic Programming (Basic) |
cpp
|
Dynamic Programming (Intermediate) |
cpp
|
Dynamic Programming (Advanced) | |
Graph | |
Graph representations |
java
ts
|
Graph traversal - Depth First Search (DFS) |
ts
|
Graph traversal - Breath First Search (BFS) | |
Graph Shortest Paths - Dijkstra's Algorithm |
This project exists thanks to all the people who contributed.