Tip 1 : Cover all the topics of dsa and solve as many questions as possible.
Tip 2 : Get your core subjects strong as well as your dsa.
Tip 3 : Make good projects and make them live and get feedback from others and improve it on the basis of those feedbacks and mention that in your interview.
Tip 1 : Make single column resume and explain your experience first and explain what kind of work you did, and what did you achieve.
Tip 2 : Explain your projects good enough so that by reading it once interviewer understands what you did in your projects so now, he/she can ask you questions accordingly.
30 min M.C.Q. round: 30 questions based on CS fundamentals (not hard and some questions are way too easy). I have given this easily.
There were two coding questions one was DP question and the other was string question.



1) We have 2 choices for a coin of a particular denomination, either i) to include, or ii) to exclude.
2) If we are at coins[n-1], we can take as many instances as possible of that coin (unbounded inclusion) i.e count (coins, n, sum – coins[n-1]); then we move to coins[n-2].
3) After moving to coins[n-2], we can’t move back and can’t make choices for coins[n-1] i.e count (coins, n-1, sum).
4) Finally, as we have to find the total number of ways, so we will add these 2 possible choices, i.e count (coins, n, sum – coins[n-1]) + count (coins, n-1, ).
The interviewer was very friendly, He first Introduce himself and then asked about my introduction and directly moved towards the Coding Question, it was from the linked list, and I was able to solve that Question. After that, He asked some DBMS questions as well as some questions related to OOPs.
The duration of the interview was around 60 mins. It went well and I receive my result next week.



We have a linked list 1->2->3->4->5->6->7 and so on. You are supposed to swap pairs of a linked list like swap (1,2), (3,4), (5,6), and so on.
1. You may not modify the data in the list’s nodes; only nodes themselves may be changed. Because imagine a case where a node contains many fields, so there will be too much unnecessary swap.
2. If a pair of a node does not exist, then leave the node as it is.
She introduces herself and ask my introduction, then directly jump into the coding,
There were roughly 5 coding Questions:
1) Maximum height of the tree
2) The reverse of the linked list
3) The reverse of string (without using STL)
4) Top View of Binary tree.
5) Loop in the Linked list



Input: Let the binary tree be:

Output: 2
Explanation: The root node is 3, and the leaf nodes are 1 and 2.
There are two nodes visited when traversing from 3 to 1.
There are two nodes visited when traversing from 3 to 2.
Therefore the height of the binary tree is 2.
1) Recursively do a Depth-first search.
I2) f the tree is empty then return -1
3) Otherwise, do the following
a) Get the max depth of the left subtree recursively i.e., call maxDepth( tree->left-subtree)
b) Get the max depth of the right subtree recursively i.e., call maxDepth( tree->right-subtree)
c) Get the max of max depths of left and right subtrees and add 1 to it for the current node.
4) max_depth = max (max dept of left subtree, max depth of right subtree) + 1
5) Return max_depth.



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?
1) Divide the list in two parts - first node and
rest of the linked list.
2) Call reverse for the rest of the linked list.
3) Link rest to first.
4) Fix head pointer



For the given binary tree

The top view of the tree will be {10, 4, 2, 1, 3, 6}.
1) we use the two variables, one for the vertical distance of the current node from the root and another for the depth of the current node from the root.
2) We use the vertical distance for indexing. If one node with the same vertical distance comes again, we check if the depth of the new node is lower or higher with respect to the current node with the same vertical distance in the map.
3) If depth of new node is lower, then we replace it.
Some usual HR questions like:
1) Introduce yourself.
2) preferred location.
3) any other offers I have?
4) Your Strength and weaknesses

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?