Hello geeks today I am sharing my Amazon SDE Intern interview 2020.
I applied through link on amazon careers for internship I got link to finish an online test by certain date.
Round 1: Online Test on mettl [90 min]
28 MCQ on c++, data structures,
2 coding questions
Q1. Given a matrix each entry in box is an integer. find row having maximum sum.
Q2. Given a dice having m faces each numbered from 1…to ..m, the dice rolled n times. then find in how many ways a particular target sum T can be generated since ans is large we have to answer using modulo 1e9+7.
Approximately 70+ students are invited for off-campus drive at on of the college in Bengaluru.
Technical Algorithm DS interview Round 1:
Q1. Interviewer was cool tried to make me comfortable he asked me about my online round at that time I only able to recognize only first question of my online round about matrix and tell him my approach [ my bad was I not able to recognize second question of dp If I would then perhaps it might impress him more]
Q2.Given a one dimension array find two elements such difference b/w them is minimum.
Q3.Expanded question to two sorted array then to k sorted array
Q4. asked to write code for heapify. little discussion on build heap complexity [ got confused and not able to clearly explain him how complexity becomes O(n)]
Q5. Asked about bst, lots of discussion on bst.
given a bst make it a balanced binary tree Such that its preorder traversal gives us sorted sequence. No use of extra space, only to use operation to swap any two nodes.
I give him some unpolished approach. He asked am I not comfortable with trees.
finally got selected, for round two aprrox 20 were selected for round 2.
Technical Round 2 : [Algo Ds] [60 min]
little discussion on my project [5 min]
Q1. asked about dynamically growing sequential list, name them and discussed about various complexity of insert, remove random access in them.
myans. Discussed about Arraylist in java and linkedlist [he asked me for one more but I am not able to answer]
Q2. asked me about dictionary how they are internally implemented.
I discussed about red black trees (bst), and hashtable and complexity of its various operation.
Q3. he asked me to implement a full Hashtable class which should dynamically grow as no of keys increases and handle collisions.
implement methods like get(key) and put(key).
myans. I implement it fully but it takes more than two A4 size pages It takes my lots of time about 40 mins finally he satisfied.
he said we are running out of time so I have to solve next question very quickly.
Q4. Given a string of characters you can erase K consecutive occurring characters [though I misinterpreted it as more than K consecutive occurring characters which leads me to not come up with solution] . then what is minimum length we can get, note operation can applied recursively.
ans. first I gave him naive approach, then I further come up with unpolished solution using two pointers from middle. He asked for standard one. Time up !!!!!
Result : REJECTED