Tip 1 : Take your time before directly jumping onto the solution even if you have done the code already, it might be possible that interviewer would add any constraints of his own choice.
Tip 2 : Speak out loud, that's very important. If you are stuck onto something in between the interview, don't just sit idle or give up. Talk to your interviewer, let him/her know what's going in your mind, what approach are you trying to implement. The interviewer is your only friend in that room.
Tip 3 : Don't worry if you haven't been into Competitive Programming before, you can still crack a lot of companies with decent DSA skills, projects are add on.
Tip 4 : For preparation, go through coding ninja's course thoroughly. It's very likely to encounter same questions that are already in the course itself. Common problems like, stock span, balanced parentheses, edit distance-DP, etc.
Tip 1 : Take a nice template for resume, you can even refer sites like novoresume.com. It has got good templates, just pick any with no fancy fonts and colors. Keep it simple.
Tip 2 : Be very specific. Write out important stuff only if you applying for a tech job. No one's going to see your dance/acting skills while interviewing you.
There were around 50 mcq's on C/C++ concepts.
There was no negative marking though.
It was Online Videocall technical round where i was asked 2 coding questions.
It lasted for 40-50 minutes.



1. The given node 'TARGET_NODE_VAL' is always present in the tree.
2. The value of each node in the tree is unique.
3. Notice that the Kth ancestor node if present will always be unique.
Step 1: Find the given node in the tree.
Step 2: If node not found then simply return null, else check if K is greater than 0, if yes that means we haven't found the Kth ancestor, so we decrement the value of K.
Only 7 students were shortlisted after the first face to face round out of 40 students.
The interviewer seemed cool and was trying to calm down me as i was getting nervous.
Again there were 2 coding questions.



The given linked list is 1 -> 2 -> 3 -> 4-> NULL. Then the reverse linked list is 4 -> 3 -> 2 -> 1 -> NULL and the head of the reversed linked list will be 4.
Can you solve this problem in O(N) time and O(1) space complexity?



You need to modify the given tree only. You are not allowed to create a new tree.
For the given binary search tree

11 will be replaced by {15 + 29 + 35 + 40}, i.e. 119.
2 will be replaced by {7 + 11 + 15 + 29 + 35 + 40}, i.e. 137.
29 will be replaced by {35 + 40}, i.e. 75.
1 will be replaced by {2 + 7 + 11 + 15 + 29 + 35 + 40}, i.e. 139.
7 will be replaced by {11 + 15 + 29 + 35 + 40}, i.e. 130.
15 will be replaced by {15 + 29 + 35 + 40}, i.e. 104.
40 will be replaced by 0 {as there is no node with a value greater than 40}.
35 will be replaced by {40}, i.e. 40.
Step 1: I made a helper function where i passed the root node and 0 which worked as the sum in it.
Step 2: Made a base case, if root is null, return.
Step 3: Went to the rightmost node of the tree as the rightmost node is the only node which will have highest value in whole BST.
Step 4: Added the root's data to the sum variable which was passed in the helper function.
Step 5: After adding the root's sum with the sum variable, update the current root data with that sum.
It was Quite easy round and i cleared this round and got offered
1. Your strengths and weaknesses
2. Where do you see yourself after 5 years?

Here's your problem of the day
Solving this problem will increase your chance to get selected in this company
How do you remove whitespace from the start of a string?