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 1.0.0 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 cpp🐀 py🐍
Basic Data Structures
Array py🐍 ts
String
Linked List py🐍 ts
Stack py🐍 ts
Queue cpp🐀 ts
Set cpp🐀 ts
Hash Table py🐍 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
Topology Sort

🔆 Collections

Competitive Programming Events

  • 🎄 Advent of Code (2022)
  • 🔰 Google Code Jam (2022)

Courses & Specialization

Contributors

This project exists thanks to all the people who contributed.