Skip to content

rain1024/datastructures-algorithms-competitive-programming

Repository files navigation

Data Structures & Algorithms - Competitive Programming

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).

New Version 2.2 is released.

📙 Data Structures & Algorithms

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 py🐍 cpp🐀
Basic Data Structures
Array py🐍 ts
String
Linked List ts
Stack py🐍 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

🔆 Collections

Events of competitive programming

Contributors

This project exists thanks to all the people who contributed.