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

https://github.com/otabek-kholmirzaev/awesome-dsa

A 𝗿𝗼𝗮𝗱𝗺𝗮𝗽 for data structures and algorithms with comprehensive tutorials & practice resources.
https://github.com/otabek-kholmirzaev/awesome-dsa

List: awesome-dsa

algorithms awesome coding-interviews data-structures dsa faang-preparation leetcode roadmap

Last synced: 7 months ago
JSON representation

A 𝗿𝗼𝗮𝗱𝗺𝗮𝗽 for data structures and algorithms with comprehensive tutorials & practice resources.

Awesome Lists containing this project

README

          

# 🚀 Awesome Data Structures & Algorithms

A **roadmap** for data structures and algorithms with comprehensive tutorials & practice resources.

## ✅ Data Structures

### 🎯 Time & Space Complexity

- 📚 Tutorials

- [Introduction to Big O Notation and Time Complexity - by CS Dojo](https://youtu.be/D6xkbGLQesk)
- [Big-O Notation For Coding Interviews - by NeetCode](https://youtu.be/BgLTDT03QtU)
- [Time and Space Complexity - by take U forward](https://youtu.be/FPu9Uld7W-E)

### 🎯 Arrays

- 📚 Tutorials

- [An Overview of Arrays and Memory - by CS Dojo](https://youtu.be/pmN9ExDf3yQ)
- [Arrays Intro - by take U forward](https://youtu.be/37E9ckMDdTk)

- ⚡ Practice Problems

- [Two Sum](https://leetcode.com/problems/two-sum/) - [Solution](https://youtu.be/KLlXCFG5TnA)
- [Concatenation of Array](https://leetcode.com/problems/concatenation-of-array/) - [Solution](https://youtu.be/68isPRHgcFQ)
- [Replace Elements with Greatest Element on Right Side](https://leetcode.com/problems/replace-elements-with-greatest-element-on-right-side/) - [Solution](https://youtu.be/ZHjKhUjcsaU)
- [Is Subsequence](https://leetcode.com/problems/is-subsequence/) - [Solution](https://youtu.be/99RVfqklbCE)
- [Length of Last Word](https://leetcode.com/problems/length-of-last-word/) - [Solution](https://youtu.be/KT9rltZTybQ)
- [Longest Common Prefix](https://leetcode.com/problems/longest-common-prefix/) - [Solution](https://youtu.be/0sWShKIJoo4)
- [Pascal's Triangle](https://leetcode.com/problems/pascals-triangle/) - [Solution](https://youtu.be/nPVEaB3AjUM)
- [Find All Numbers Disappeared in an Array](https://leetcode.com/problems/find-all-numbers-disappeared-in-an-array/) - [Solution](https://youtu.be/8i-f24YFWC4)
- [Number of Good Pairs](https://leetcode.com/problems/number-of-good-pairs/) - [Solution](https://youtu.be/BqhDFUo1rjs)

### 🎯 Linked Lists

- 📚 Tutorials

- [Introduction to Linked Lists - by CS Dojo](https://youtu.be/WwfhLC16bis)
- [Linked List Playlist - by take U forward](https://www.youtube.com/playlist?list=PLgUwDviBIf0rAuz8tVcM0AymmhTRsfaLU)

- ⚡ Practice Problems

- [Design Linked List](https://leetcode.com/problems/design-linked-list/) - [Solution](https://youtu.be/Wf4QhpdVFQo)
- [Reverse Linked List](https://leetcode.com/problems/reverse-linked-list/) - [Solution](https://youtu.be/G0_I-ZF0S38)
- [Merge Two Sorted Lists](https://leetcode.com/problems/merge-two-sorted-lists/) - [Solution](https://youtu.be/XIdigk956u0)
- [Linked List Cycle](https://leetcode.com/problems/linked-list-cycle/) - [Solution](https://youtu.be/gBTe7lFR3vc)
- [Palindrome Linked List](https://leetcode.com/problems/palindrome-linked-list/) - [Solution](https://youtu.be/yOzXms1J6Nk)
- [Remove Linked List Elements](https://leetcode.com/problems/remove-linked-list-elements/) - [Solution](https://youtu.be/JI71sxtHTng)
- [Remove Duplicates from Sorted List](https://leetcode.com/problems/remove-duplicates-from-sorted-list/) - [Solution](https://youtu.be/p10f-VpO4nE)
- [Middle of the Linked List](https://leetcode.com/problems/middle-of-the-linked-list/) - [Solution](https://youtu.be/A2_ldqM4QcY)
- [Intersection of Two Linked Lists](https://leetcode.com/problems/intersection-of-two-linked-lists/) - [Solution](https://youtu.be/D0X0BONOQhI)

### 🎯 Stacks & Queues

- 📚 Tutorials

- [Introduction to Stacks and Queues - by CS Dojo](https://youtu.be/A3ZUpyrnCbM)
- [Stack and Queue Playlist - by take U forward](https://www.youtube.com/playlist?list=PLgUwDviBIf0pOd5zvVVSzgpo6BaCpHT9c)

- ⚡ Practice Problems

- [Baseball Game](https://leetcode.com/problems/baseball-game/) - [Solution](https://youtu.be/Id_tqGdsZQI)
- [Valid Parentheses](https://leetcode.com/problems/valid-parentheses/) - [Solution](https://youtu.be/WTzjTskDFMg)
- [Implement Stack using Queues](https://leetcode.com/problems/implement-stack-using-queues/) - [Solution](https://youtu.be/rW4vm0-DLYc)
- [Implement Queue using Stacks](https://leetcode.com/problems/implement-queue-using-stacks/) - [Solution](https://youtu.be/eanwa3ht3YQ)
- [Make The String Great](https://leetcode.com/problems/make-the-string-great/) - [Solution](https://youtu.be/10tBWNjzvtw)
- [Min Stack](https://leetcode.com/problems/min-stack/) - [Solution](https://youtu.be/qkLl7nAwDPo)
- [Evaluate Reverse Polish Notation](https://leetcode.com/problems/evaluate-reverse-polish-notation/) - [Solution](https://youtu.be/iu0082c4HDE)
- [Removing Stars From a String](https://leetcode.com/problems/removing-stars-from-a-string/) - [Solution](https://youtu.be/pRyFZIaKegA)
- [Design Circular Queue](https://leetcode.com/problems/design-circular-queue/) - [Solution](https://youtu.be/aBbsfn863oA)

### 🎯 Hash Tables

- 📚 Tutorials

- [Introduction to Hash Tables and Dictionaries - by CS Dojo](https://youtu.be/sfWyugl4JWA)
- [Hash Tables: Hash Functions, Sets, & Maps - by Greg Hogg](https://youtu.be/iZyxNEBpqFY)
- [Hash Map Tutorial - by take U forward](https://youtu.be/KEs5UyBJ39g)

- ⚡ Practice Problems

- [Design HashMap](https://leetcode.com/problems/design-hashmap/) - [Solution](https://youtu.be/cNWsgbKwwoU)
- [Design HashSet](https://leetcode.com/problems/design-hashset/) - [Solution](https://youtu.be/VymjPQUXjL8)
- will add more problems soon ...

### 🎯 Graphs

- 📚 Tutorials

- [Graph Series Playlist - by take U forward](https://www.youtube.com/playlist?list=PLgUwDviBIf0oE3gA41TKO2H5bHpPd7fzn)
- [Graph Theory Tutorial from a Google Engineer](https://youtu.be/09_LlHjoEiY)
- [Graph Algorithms for Technical Interviews](https://youtu.be/tWVWeAqZ0WU)

- ⚡ Practice Problems

- will add more problems soon ...

### 🎯 Trees

- 📚 Tutorials

- [Trees Playlist - by take U forward](https://www.youtube.com/playlist?list=PLgUwDviBIf0q8Hkd7bK2Bpryj2xVJk8Vk)
- [Introduction to Trees - by CS Dojo](https://youtu.be/1-l_UOFi1Xw)
- [Binary Tree Algorithms for Technical Interviews](https://youtu.be/fAAZixBzIAI)

- ⚡ Practice Problems

- will add more problems soon ...

### 🎯 Trie

- 📚 Tutorials

- [Tries - by Gayle Laakmann](https://youtu.be/zIjfhVPRZCg)
- [Trie Series Playlist - by take U forward](https://www.youtube.com/playlist?list=PLgUwDviBIf0pcIDCZnxhv0LkHf5KzG9zp)
- [TRIE in Coding Interviews - by Errichto](https://www.youtube.com/live/MyiHeqtwOWQ)

- ⚡ Practice Problems

- [Implement Trie](https://leetcode.com/problems/implement-trie-prefix-tree/) - [Solution](https://youtu.be/oobqoCJlHA0)
- will add more problems soon ...

### 🎯 Heap

- 📚 Tutorials

- [Heap Tutorial - by Abdul Bari](https://youtu.be/HqPJF2L5h9U)
- [HEAP Playlist - by Techdose](https://www.youtube.com/playlist?list=PLEJXowNB4kPyP2PdMhOUlTY6GrRIITx28)

- ⚡ Practice Problems

- [Kth Largest Element in a Stream](https://leetcode.com/problems/kth-largest-element-in-a-stream/) - [Solution](https://youtu.be/hOjcdrqMoQ8)
- will add more problems soon ...

### 🎯 Segment Tree

- 📚 Tutorials

- [Segment Tree Tutorial - by take U forward](https://youtu.be/-dUiRtJ8ot0)
- [Lazy Propagation in Segment Tree - by take U forward](https://youtu.be/rwXVCELcrqU)
- [Segment Tree (Implementation) - by Errichto](https://www.youtube.com/live/2FShdqn-Oz8)

- ⚡ Practice Problems

- [Range Sum Query - Mutable](https://leetcode.com/problems/range-sum-query-mutable/) - [Solution](https://youtu.be/G9GRvQRtGOc)
- will add more problems soon ...

## ✅ Algorithms

### 🎯 Algorithmic Paradigms

- [Brute Force](https://youtu.be/kdTpUjd71G8)
- [Greedy Algorithms](https://youtu.be/lfQvPHGtu6Q)
- [Divide and Conquer](https://youtu.be/YOh6hBtX5l0)
- [Dynamic Programming](https://youtu.be/vYquumk4nWw)

### 🎯 Sorting Algorithms

- 📚 Tutorials:

- [Bubble Sort](https://youtu.be/xli_FI7CuzA)
- [Selection Sort](https://youtu.be/g-PGLbMth_g)
- [Insertion Sort](https://youtu.be/JU767SDMDvA)
- [Merge Sort](https://youtu.be/4VqmGXwpLqc)
- [Quick Sort](https://youtu.be/Hoixgm4-P4M)
- [Heap Sort](https://youtu.be/2DmK_H7IdTo)
- [Counting Sort](https://youtu.be/OKd534EWcdk)
- [Radix Sort](https://youtu.be/XiuSW_mEn7g)
- [Bucket Sort](https://youtu.be/VuXbEb5ywrU)

- ⚡ Practice Problems:

- will add more problems soon ...

### 🎯 Searching Algorithms

- 📚 Tutorials:

- [Linear Search](https://youtu.be/19hcyQN8J7o)
- Binary Search
- [Binary Search tutorial - by Errichto](https://youtu.be/GU7DpgHINWQ)
- [Binary Search Playlist by take U forward](https://www.youtube.com/playlist?list=PLgUwDviBIf0pMFMWuuvDNMAkoQFi-h0ZF)

- ⚡ Practice Problems:

- will add more problems soon ...

### 🎯 Recursion & Backtracking

- 📚 Tutorials:

- [Introduction to Recursion - by CS Dojo](https://youtu.be/B0NtAFf4bvU)
- [Introduction to Backtracking - by Abdul Bari](https://youtu.be/DKCbsiDBN6c)
- [Recursive Backtracking - by Greg Hogg](https://youtu.be/L0NxT2i-LOY)
- [Recursion & Backtracking Playlist - by take U forward](https://www.youtube.com/playlist?list=PLgUwDviBIf0rGlzIn_7rsaR2FQ5e6ZOL9)

- ⚡ Practice Problems:

- will add more problems soon ...

### 🎯 Divide and Conquer

- 📚 Tutorials:

- [Merge Sort](https://youtu.be/mB5HXBb_HY8)
- [Quick Sort](https://youtu.be/7h1s2SojIRw)
- [Binary Search](https://youtu.be/C2apEw9pgtw)
- [Exponentiation (Fast Power)](https://youtu.be/L-Wzglnm4dM)

- ⚡ Practice Problems:

- will add more problems soon ...