Day 1 & 2 : Learn about space and time complexity. One of the most important part of programming is knowing the complexity of the code you writing.
- Theory - by Geeksforgeeks
- Video Lecture - By Kunal Kushwaha
Day 3 to 10 : Learn about recursion and backtracking. One of the most important and most useful Concepts.
- Theory - by Geeksforgeeks
- Video Lecture - By Kunal Kushwaha
Day 11 to 30 : Learn about the basic data structures ->
- (i) Arrays
- (ii) Linked List
- (iii) Stacks and Queues
- Theory - By Geeksforgeeks
- Video Lecture - By Kunal Kushwaha
- Theory - By TutorialsPoint
- Video Lecture - By Love Babbar
- Theory - By Andrew Edu
- Video Lecture - By Kunal Kushwaha
Some important Suggestion from Nishant Chahar >
From Now, start giving contests and learn the new concepts that come along the way.
You might not do well in the first few but it’s okay! Just keep learning and keep growing.
Day 31 to 45 : Learn about more and a little more complex data structures and algorithms ->
-
(i) Searching
-
(ii) Sorting {
\1\ Bubble Sort \2\ Insertion Sort \3\ Selection Sort \4\ Merge Sort \5\ Quick Sort
-
(iii) Hashmaps
-
(iv) Trees
-
(v) Heaps
-
(Vi) Sliding Window
- Theory - By Geeksforgeeks
- Video Lecture - By CodeHelp - by Babbar
- Theory - By Geeksforgeeks
- Video Lecture - By CodeHelp - by Babbar
- Theory - By Geeksforgeeks
- Video Lecture - By By CodeHelp - by Babbar
- Theory - By Geeksforgeeks
- Video Lecture - By By By CodeHelp - by Babbar
- Theory - By Geeksforgeeks
- Video Lecture - By Aditya Verma
- Theory - By Geeksforgeeks
- Video Lecture - By Aditya Verma
Day 46 to 70 : Learn about DP and Graphs ->
-
(i) Graph ->
\1\ Breadth First Search [BFS] \2\ Depth First Search [DFS] \3\ Shortest path from source to all vertices: Dijkstra \4\ Shortest path from every vertex to every other vertex: Floyd Warshall \5\ Minimum Spanning tree: Prim \6\ Minimum Spanning Tree: Kruskal \7\ Strongly connected component kosaraju’s algorithm \8\ Topological Sort \9\ Shortest Path from source to all vertices with negative edges: Bellman ford \10\ Normal DSU \11\ DSU by rank
-
(ii) Dynamic Programming
Day 71 to 80 : Learn about OOPs (You’ll get something amazing on this by the time you reach here)
Day 80 to 90 : Some more topics which will help you perform better in online tests
-
(i) Number Theory
-
(ii) Bit Manipulation
-
(iii) Tries
After watching Nishant bhaiya's video, I created a GitHub Repo. Called 90DaysDSA. After Creating the repo i organized all the files and the folders. That day, I Learnt about space and time complexity with the help of GFG and YouTube. {theory only}
After all the necessary theory, I started solving problems on Leetcode. (Solved some Leetcode problems with the help of Youtube videos)
At day 3 I started learning about recursion. I watched a couple of tutorials on Youtube also read some documentation on GFG.
Started solving problems on leetcode also re-watched some tutorials again for better understanding.
After half of day 05, I started learning about backtracking. Watched a couple of tutorials.
After reading some more documentation I starting solving problems on Leetcode and gfg. (haven't solve a single one by own).
Solved some more problems on GeeksforGeeks and watched a tutorial on Youtube.
Solved some problems on Leetcode of recursion and backtracking.
DAY OFF!
revised all the notes of recursion and backtracking and solved some problems on GFG.
Started learning about Arrays. watched a couple of tutorials on Youtube also read some documentation. Solved some problems.
Sloved alot of problems on leetcode, gfg and Codestudio. (Total more than 25)
Started learning about Linked List, watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode.
Practice and sloved alot of problems on leetcode and Codestudio. Also revised my handwritten notes.
Started learning about Stacks and Queues. watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode.
DAY OFF!
Practice and sloved alot of problems on leetcode, gfg and Codestudio. Also revised my handwritten notes.
Yay! Feeling Proud, completed 30 Days. Started learning about Searching. watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode.
Solved some problems on Leetcode, gfg and Codestudio.
Started learning about Sorting, Started with Bubble Sort. watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode.
Started learning about Insertion Sort, again watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode.
Started learning about Selection Sort, and (here we go again) watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode.
Started Learning about Merge Sort and Quick Sort, watched a couple of tutorials on Youtube also read some documentation on gfg. Solved some problems on leetcode and gfg.
Started Learning about Quick Sort, watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode and gfg.
Started learning about Hashmaps, watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode and gfg.
Started learning about Trees, watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode and gfg.
Started learning about Heaps, watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode and gfg.
Started learning about Sliding Window, watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode and gfg.
Practice and sloved alot of problems on leetcode, gfg and Codestudio. Also revised my handwritten notes.
Started learning about Graphics, watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode and gfg.
Started learning about Breadth First Search (BFS) and Depth First Search (DFS) watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode and gfg.
Learnt about Shortest path from source to all vertices: Dijkstra, Shortest path from every vertex to every other vertex: Floyd Warshall. watched a couple of tutorials on Youtube also read some documentation. Solved some problems on leetcode and gfg.
Learnt about Minimum Spanning tree: Prim and Minimum Spanning Tree: Kruskal. watched a couple of tutorials on Youtube also read some documentation. Practice and sloved alot of problems on leetcode, gfg and Codestudio. Also revised my handwritten notes.
Learnt about Strongly connected component kosaraju’s algorithm. watched a couple of tutorials on Youtube also read some documentation. Practice a couple of problems on leetcode.
Started learning about Topological Sort . watched a couple of tutorials on Youtube also read some documentation. Practice and sloved alot of problems on leetcode, gfg and Codestudio.
In the day 56, I learnt about Shortest Path from source to all vertices with negative edges: Bellman ford. watched a couple of tutorials on Youtube also read some documentation. Practice and sloved alot of problems on leetcode, gfg and Codestudio.
Learnt about Normal DSU and DSU by rank, solved alot problems on Leetcode. I'm glad it's been 2 months since I started this journey.
Started learning about Dynamic Programming, watched a couple of tutorials on Youtube also read some documentation. Practice and sloved alot of problems on leetcode, gfg and Codestudio.
Learnt and Practice alot of problems on leetcode, gfg and Codestudio.
Started learning about Dynamic Programming, read a couple of documentation on gfg and also watched some tutorials on Youtube. {theory only}
Revised old topics like Sliding Windo,Stacks and Queues, backtracking etc. Practice and sloved problems of Dynamic Programming on Leetcode.