Tip 1 : Practice at least 10-20 questions of DS & Also on each topic from difficulty level easy to hard.
Tip 2 : Prepare well around OOPs concepts and Database concepts.
Tip 3 : If you have 2.5+ year of experience practice around HLD and LLD.
Tip 1 : Please mention the keyword related to the work that you have done. (eg. Git, Maven, JUnit, Java, AWS )
Tip 2 : Please mention any certification that you have done. And try to keep your resume within one page.
All three rounds were scheduled on the same day in day time.
Interview environment was positive. Interviewer made me comfortable by asking normal question about me and the work that I have done.Overall the interview experience was really great.
This Round was based on Java related problem and concepts.
Print Odd/Even numbers in multiple threads (one by one)
ThreadPoolExecutor Implementation
Working of HashMap, HashSet
Some theory Questions Related to Exceptions/Collections/Annotations
Garbage Collector Working, Heap Memory Analyze
Tip 1 : Practice multithreading concepts with examples
Tip 2 : Ready garbage collection process and memory management in java
Tip 3 : Read about different collections and their different use case, this would really help in answering the questions
This was the DS Algo round. It went for 1 hours in which interviewer asked two problems in which one was easy and other one was medium level problem. Overall the interview experience was good.



For the following array:
[0 1 1 1 0 0 1]
The output should be [0 0 0 1 1 1 1].
You have to sort the array in place.
Method 1 (Count 0s or 1s) :
Step1: count zeros and ones
Step2 : put zeros first in array and then 1s in array
Method 2:
Method 2 (Use two indexes to traverse)
Maintain two indexes. Initialize the first index left as 0 and second index right as n-1.
Do following while left < right
a) Keep incrementing index left while there are 0s at it
b) Keep decrementing index right while there are 1s at it
c) If left < right then exchange arr[left] and arr[right]



Input: Consider the following Binary Tree:
Output:
Following is the level-order traversal of the given Binary Tree: [1, 2, 3, 5, 6, 4]
public List> zigzagLevelOrder(TreeNode root) {
List> ans = new ArrayList();
if(root == null ) return ans;
Deque queue = new ArrayDeque();
int count = -1;
queue.add(root);
while(!queue.isEmpty()){
List list = new ArrayList();
int n = queue.size();
if(count == -1 ){
for(int i=0; i TreeNode node = queue.removeFirst();
list.add(node.val);
if(node.left != null ) queue.addLast(node.left);
if(node.right != null ) queue.addLast(node.right);
}
}else{
for(int i=0; i TreeNode node = queue.removeLast();
list.add(node.val);
if(node.right != null ) queue.addFirst(node.right);
if(node.left != null ) queue.addFirst(node.left);
}
}
ans.add(list);
count = -count;
}
return ans;
}

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?