Tip 1 : Practice regularly, meaning once you have covered all the topics, revisit them every week, and solve 3-5 questions.
Tip 2 : Use the Feynman technique. Explain your approach towards solving the problem to someone, or better yet, note it down so that when you revisit that question, the explanation is handy.
Tip 3 : Do 1 project, preferably a full-stack one including a database. This would provide some material for discussion, and be through with each aspect of the project.
Tip 1 : Keep the resume to one page and put info that is directly related to the role applied.
Tip 2 : In the projects section, keep a maximum of 3 projects, but ensure that at least one of them is hosted/live that can be shown to the interviewer.
There were a total of 3 coding questions to be solved, and the time limit was 90 minutes. The candidate was free to use language of their choice.



I first used simple recursive solution to solve, but it was no good enough to pass all test cases due to TLE. I, then, implemented a DP solution and it passed all the test cases.
The first round of interview lasted for around 45 minutes. I was asked two DSA questions, and was supposed to code them while my screen was shared. I wrote code for both the questions with little help from the interviewer. Finally, I was asked couple of questions based on my resume.



The given linked lists may or may not be null.
If the first list is: 1 -> 4 -> 5 -> NULL and the second list is: 2 -> 3 -> 5 -> NULL
The final list would be: 1 -> 2 -> 3 -> 4 -> 5 -> 5 -> NULL
Step 1 : I talked about creating a new node and moving it forward as and when a new element is added to the merged linked list.
Step 2 : Came to the realization that having just a single node would not be enough to solve this problem.as the head of the merged linked list would be lost.
Step 3 : Keeping this in mind, I solved the question by having a head for each of the two sorted linked lists, a dummy node that would always point towards the head of the merged linked list and a temp node that would move forward as and when a new element is added.



Consider the two strings 'P' = "abfyg" and 'Q' = "gabfy"
If we cyclically rotate String 'P' to the right once. The resulting string P becomes "gabfy" which is equal to String 'Q'.
Therefore it is possible to convert String 'P' to String 'Q'.
Step 1 : Concatenate any of the string to itself, i.e. s2 = 2*s2.
Step 2 : Check whether s1 is a substring in s2.
I was given one data structure question and was then asked about recursion.



For the given array 'ARR' = [7, 12, 1, 20]
The next greater element for 7 is 12.
The next greater element for 12 is 20.
The next greater element for 1 is 20.
There is no greater element for 20 on the right side.
So, the output is [12, 20, 20, -1].
This was the hiring manager round. No data structures question were asked in this round. There was discussion around the projects that I had done and my resume. As I am from EEE branch, I was asked why I want to get into software. The interview happened around 8 PM. I was asked to create a schema for one of my projects.
why I want to get into software?

Here's your problem of the day
Solving this problem will increase your chance to get selected in this company
What is recursion?