Get basic understanding of what it means, how are they calculated and eventually while practicing more and more problems, try to figure them out. Don’t emphasise on completing the course. Here is the link.
Work on recursive problems from scratch as it covers major and important sections of coding problems (including backtracking, trees, graphs, dynamic programming, etc.)
Coding Practice link:
https://www.techiedelight.com/recursion-practice-problems-with-solutions/
Try to implement problems in following sequence from above link:
a. String (Complete — 100%)
b. Array (Complete — 100%)
c. Backtracking (Complete — 100%)
d. Binary Tree (Complete — 60%)
e. Binary Search Tree (Complete — 60%)
f. Dynamic Programming (Complete — 100%)
Before starting dynamic programming, read below links to get basic understanding of it and why it is so effective. Also solve some basic problems given in below links, remember you have to return to DP problems on techiedelight as that is easier to start with.
https://www.codechef.com/wiki/tutorial-dynamic-programming
https://www.quora.com/What-are-the-best-ways-to-master-dynamic-programming/answer/Sameer-Gulati-3
g. Matrix (Complete — 100%)
h. Graphs (Complete — 100%)
I know graph problems are very less here, don’t worry, we will cover it later.
Merge sort — https://www.geeksforgeeks.org/merge-sort/
Quick sort — https://www.youtube.com/watch?v=uXBnyYuwPe8
Binary Search.
Understanding heap(priority queue) and its implementation
https://www.youtube.com/watch?v=HqPJF2L5h9U&t=2s
https://www.youtube.com/watch?v=t0Cq6tVNRBA
Problems on Heap
Try finding out solution of problems available on YouTube (preferably over recommended channels as they’ve got some real nice explanation) and then search elsewhere. Also try exercising other related problems that come up while searching for the problems asked by Google. Trust me, you’ll learn a lot from there, so make sure you invest your time in this particular section.
b. Irfan Baqui (Complete all problems on this channel)
c. Abdul Bari
d. Byte By Byte (Complete all problems on this channel)
Practice coding questions of these companies at least, Google, FB, Amazon, Microsoft, DE Shaw, Directi, Oracle, Adobe, Samsung, Ola and Walmart Labs.
https://www.youtube.com/watch?v=pcKY4hjDrxk
https://www.techiedelight.com/depth-first-search/ (code)
https://www.techiedelight.com/breadth-first-search/ (code)
https://www.youtube.com/watch?v=XB4MIexjvY0&t=303s
https://www.youtube.com/watch?v=d6ZFqjH63vo
https://www.youtube.com/watch?v=XqCP_2Vcas4 https://www.techiedelight.com/single-source-shortest-paths-dijkstras-algorithm/ (code)
https://www.youtube.com/watch?v=FtN3BYH2Zes&t=327s
https://www.techiedelight.com/single-source-shortest-paths-bellman-ford-algorithm/ (code)
https://www.youtube.com/watch?v=oNI0rf2P9gE&t=247s
https://www.techiedelight.com/pairs-shortest-paths-floyd-warshall-algorithm/ (code)
https://www.youtube.com/watch?v=4ZlRH0eK-qQ&t=465s
https://www.techiedelight.com/kruskals-algorithm-for-finding-minimum-spanning-tree/ (code)
Solve medium/hard level questions on LeetCode. (1 month)
“Cracking the Coding Interview” — for basics only
https://www.youtube.com/watch?v=wU6udHRIkcc&t=1077s
https://www.techiedelight.com/disjoint-set-data-structure-union-find-algorithm/
https://www.youtube.com/watch?v=YG6iX28hmd0&t=255s
https://www.youtube.com/watch?v=p4kfbNJzftQ
https://www.youtube.com/watch? v=CN0N1ddJ9hA&list=PLMCXHnjXnTnuASA1NghV3Vs9J3D_ij5w2
I never expected switching jobs to be this difficult. Those of you who are struggling with it, I can relate to the frustration. Things don’t always go as planned, and there is the role of chance or luck in the interview process. A Sanskrit quote from the Bhagavad Gita that keeps me sane in such times:
You have the right to work only, but never to its fruits. Let not the fruits of action be your
motive, nor let your attachment be to inaction.