Roadmap To Learn Data Structures and Algorithms
Tags: roadmap, dsa, datastructure
Published: 2021-06-27 08:20:58

[Credit](https://www.youtube.com/c/TheCodeSkool)

## 1. Arrays

### -Bare Minimum
a. https://www.geeksforgeeks.org/top-50-array-coding-problems-for-interviews/

### -Bonus
a. https://www.interviewbit.com/courses/programming/topics/arrays/
b. https://leetcode.com/tag/array/


## 2. Strings
### -Bare Minimum
a. https://www.interviewbit.com/courses/programming/topics/strings/

### -Bonus
a. https://leetcode.com/tag/string/
b. https://www.hackerrank.com/domains/algorithms?filters%5Bstatus%5D%5B%5D=unsolved\u0026filters%5Bsubdomains%5D%5B%5D=strings\u0026badge_type=problem-solving


## 3. Linked Lists
### -Bare Minimum
a. https://www.interviewbit.com/courses/programming/topics/linked-lists/

### -Bonus
a. https://leetcode.com/tag/linked-list/
b. https://www.geeksforgeeks.org/top-20-linked-list-interview-question/

## 4. Stacks and Queues
### -Theory:
a. https://www.geeksforgeeks.org/stack-data-structure-introduction-program/
b. https://www.geeksforgeeks.org/queue-set-1introduction-and-array-implementation/

### -Bare Minimum
a. https://www.interviewbit.com/courses/programming/topics/stacks-and-queues/

### -Bonus
a. https://leetcode.com/tag/stack/
b. https://leetcode.com/tag/queue/
c. https://www.geeksforgeeks.org/queue-data-structure/
d. https://www.geeksforgeeks.org/stack-data-structure0

## 5. Tree-based data structures:
### -Theory:
a. https://www.geeksforgeeks.org/binary-tree-data-structure/
b. https://www.geeksforgeeks.org/binary-search-tree-data-structure/
c. https://www.geeksforgeeks.org/trie-insert-and-search/
d. https://www.geeksforgeeks.org/heap-data-structure/
e. https://www.geeksforgeeks.org/hashing-data-structure/

### -Bare minimum:
a. https://www.interviewbit.com/courses/programming/topics/tree-data-structure/
b. https://www.interviewbit.com/courses/programming/topics/heaps-and-maps/
c. https://www.interviewbit.com/courses/programming/topics/hashing/

### -Bonus
a. https://leetcode.com/tag/tree/
b. https://leetcode.com/tag/heap/
c. https://leetcode.com/tag/trie/
d. https://leetcode.com/tag/hash-table/


## 6. Graphs:
### -Theory:
a. https://www.geeksforgeeks.org/graph-and-its-representations/

### -Standard Algos:
a. BFS - https://www.geeksforgeeks.org/breadth-first-search-or-bfs-for-a-graph/
b. DFS - https://www.geeksforgeeks.org/depth-first-search-or-dfs-for-a-graph/
c. Dijkstra - https://www.geeksforgeeks.org/dijkstras-shortest-path-algorithm-greedy-algo-7/
d. Prim's - https://www.geeksforgeeks.org/prims-minimum-spanning-tree-mst-greedy-algo-5/
e. Kruskal - https://www.geeksforgeeks.org/kruskals-minimum-spanning-tree-algorithm-greedy-algo-2/
f. Floyd-Warshall - https://www.geeksforgeeks.org/floyd-warshall-algorithm-dp-16/
g. Union Find - https://www.geeksforgeeks.org/union-find-algorithm-union-rank-find-optimized-path-compression/


### -Bare Minimum:
a. https://leetcode.com/tag/graph/ (Easy and Medium)

### -Bonus:
a. https://www.interviewbit.com/courses/programming/topics/graph-data-structure-algorithms/


## 7. Dynamic Programming:
### -Video lectures:
a. Lec 1 - https://www.youtube.com/watch?v=OQ5jsbhAv_M\u0026list=PLcDimPvbmfT8qAxD6JH_kmXiQwTNcoK78
b. Lec 2 - https://www.youtube.com/watch?v=ENyox7kNKeY\u0026list=PLcDimPvbmfT8qAxD6JH_kmXiQwTNcoK78\u0026index=2
c. Lec 3 - https://www.youtube.com/watch?v=ocZMDMZwhCY\u0026list=PLcDimPvbmfT8qAxD6JH_kmXiQwTNcoK78\u0026index=3

### -Bare minimum (Standard problems):
a. https://www.geeksforgeeks.org/program-for-nth-fibonacci-number/
b. https://www.geeksforgeeks.org/0-1-knapsack-problem-dp-10/
c. https://www.geeksforgeeks.org/coin-change-dp-7/
d. https://www.geeksforgeeks.org/compute-ncr-p-set-1-introduction-and-dynamic-programming-solution/
e. https://www.geeksforgeeks.org/longest-increasing-subsequence-dp-3/
f. https://www.geeksforgeeks.org/longest-common-subsequence-dp-4/
g. https://www.geeksforgeeks.org/longest-common-substring-dp-29/


### -Bonus:
a. https://www.interviewbit.com/courses/programming/topics/dynamic-programming/
b. https://leetcode.com/tag/dynamic-programming