i
Amazon
Proud winner of ABECA 2025 - AmbitionBox Employee Choice Awards
Filter interviews by
Calculate the distance between two nodes in a binary tree using their Lowest Common Ancestor (LCA).
1. Find the LCA of the two nodes.
2. Calculate the distance from the LCA to each node.
3. The total distance is the sum of the two distances.
Example: For nodes 4 and 5, if LCA is 2, distance = distance(2, 4) + distance(2, 5).
Count inversions in an array to determine how far it is from being sorted.
An inversion is a pair of indices (i, j) such that i < j and arr[i] > arr[j].
Example: In the array [2, 3, 8, 6, 1], the inversions are (2, 1), (3, 1), (8, 6), (8, 1).
The total number of inversions in the example is 4.
A common approach to count inversions is using a modified merge sort algorithm.
The time complexity of the merge sort bas...
The diameter of a tree is the longest path between two nodes in a tree.
Calculate the longest path between two leaf nodes in the tree.
The diameter of a tree can be found by calculating the height of the left subtree, the height of the right subtree, and the sum of the heights plus 1 for the root node.
Example: For the tree 1 -> 2 -> 3 -> 4, the diameter is 3 (from node 4 to node 2).
To find the n'th node from the end of a Linked List, use two pointers approach.
Use two pointers, one moving n steps ahead of the other.
When the first pointer reaches the end, the second pointer will be at the n'th node from the end.
Handle edge cases like n being greater than the length of the Linked List.
What people are saying about Amazon
Use Breadth First Search algorithm to find the shortest distance between 2 points in a matrix.
Implement Breadth First Search algorithm to traverse the matrix
Keep track of visited cells to avoid revisiting them
Stop the search when the destination point is reached
The sliding window algorithm efficiently solves problems involving contiguous subarrays or substrings.
Used to find maximum/minimum in a subarray of fixed size. Example: max sum of any 3 consecutive elements.
Helps in counting distinct elements in a substring. Example: count of unique characters in 'abcabc'.
Can be applied to problems like longest substring without repeating characters. Example: 'abcabcbb' -> 'abc...
Binary search is an efficient algorithm for finding an item from a sorted list of items.
Binary search works on sorted arrays. Example: [1, 2, 3, 4, 5].
It divides the search interval in half. If the target is less than the middle element, search the left half.
Time complexity is O(log n), making it faster than linear search (O(n)).
Example: To find 3 in [1, 2, 3, 4, 5], check middle (3), found it immediately.
If the t...
The Rotten Oranges problem involves determining the time taken for all oranges to rot in a grid.
Model the grid as a graph where each cell represents an orange.
Use BFS to simulate the rotting process, starting from all initially rotten oranges.
Count the minutes taken for all reachable fresh oranges to rot.
Example: In a 2D grid, rotten oranges spread to adjacent fresh oranges every minute.
Find the minimum sum of a subarray within an array of integers.
Iterate through the array and keep track of the current sum of subarray
Update the minimum sum if a smaller sum is found
Consider using Kadane's algorithm for an efficient solution
Find the smallest substring in a string that contains all characters of another string.
Use two pointers to maintain a sliding window over the string.
Count characters in the target string using a hash map.
Expand the window by moving the right pointer and contract it by moving the left pointer.
Example: For s = 'ADOBECODEBANC' and t = 'ABC', the result is 'BANC'.
Keep track of the minimum length and starting index of ...
I applied via LinkedIn and was interviewed in Sep 2024. There were 2 interview rounds.
Easy Questions- Can be done with decent practice
Coding test had 2 medium level coding questions
I applied via Approached by Company and was interviewed in Aug 2024. There were 2 interview rounds.
2 coding questions of easy to medium difficulty
Sliding window problem where you can only pick fruits from two different baskets
Use a sliding window approach to keep track of the maximum number of fruits in two baskets
Keep track of the types of fruits and their counts in the window
Update the window by removing fruits from the beginning and adding fruits from the end
Keep track of the maximum number of fruits seen so far
I applied via Campus Placement and was interviewed in Aug 2024. There were 2 interview rounds.
2 leetcode easy problems, arrays and strings.
Find the smallest substring in a string that contains all characters of another string.
Use two pointers to maintain a sliding window over the string.
Count characters in the target string using a hash map.
Expand the window by moving the right pointer and contract it by moving the left pointer.
Example: For s = 'ADOBECODEBANC' and t = 'ABC', the result is 'BANC'.
Keep track of the minimum length and starting index of valid...
Find the minimum sum of a subarray within an array of integers.
Iterate through the array and keep track of the current sum of subarray
Update the minimum sum if a smaller sum is found
Consider using Kadane's algorithm for an efficient solution
I appeared for an interview in Mar 2025, where I was asked the following questions.
BFS (Breadth-First Search) is an algorithm for traversing or searching tree or graph data structures level by level.
Level Order Traversal: BFS explores all neighbors at the present depth prior to moving on to nodes at the next depth level.
Queue Data Structure: BFS uses a queue to keep track of nodes to be explored, ensuring nodes are processed in the order they are discovered.
Shortest Path: In unweighted graphs, BFS ca...
I appeared for an interview in Dec 2024, where I was asked the following questions.
I applied via Approached by Company and was interviewed in May 2024. There were 2 interview rounds.
It had very basic dsa problem I don't not remember the exact question. It was based on array manipulation.
The Rotten Oranges problem involves determining the time taken for all oranges to rot in a grid.
Model the grid as a graph where each cell represents an orange.
Use BFS to simulate the rotting process, starting from all initially rotten oranges.
Count the minutes taken for all reachable fresh oranges to rot.
Example: In a 2D grid, rotten oranges spread to adjacent fresh oranges every minute.
I applied via LinkedIn and was interviewed in Jun 2024. There were 2 interview rounds.
Basic aptitude and data structures along with some personality based questions
The sliding window algorithm efficiently solves problems involving contiguous subarrays or substrings.
Used to find maximum/minimum in a subarray of fixed size. Example: max sum of any 3 consecutive elements.
Helps in counting distinct elements in a substring. Example: count of unique characters in 'abcabc'.
Can be applied to problems like longest substring without repeating characters. Example: 'abcabcbb' -> 'abc'.
Use...
Binary search is an efficient algorithm for finding an item from a sorted list of items.
Binary search works on sorted arrays. Example: [1, 2, 3, 4, 5].
It divides the search interval in half. If the target is less than the middle element, search the left half.
Time complexity is O(log n), making it faster than linear search (O(n)).
Example: To find 3 in [1, 2, 3, 4, 5], check middle (3), found it immediately.
If the target...
LC Medium - 2 questions
Two-pointer technique is used to solve problems involving arrays or linked lists by using two pointers to traverse the data structure.
Start with two pointers at different positions in the array or linked list
Move the pointers based on the problem requirements (e.g. one pointer moves faster than the other)
Commonly used in problems like finding a pair of elements that sum up to a target value
I applied via Referral and was interviewed in Mar 2024. There was 1 interview round.
Some of the top questions asked at the Amazon Software Developer Intern interview -
The duration of Amazon Software Developer Intern interview process can vary, but typically it takes about 2-4 weeks to complete.
based on 43 interview experiences
Difficulty level
Duration
based on 91 reviews
Rating in categories
Customer Service Associate
4.2k
salaries
| ₹1.8 L/yr - ₹5 L/yr |
Transaction Risk Investigator
3.1k
salaries
| ₹2.4 L/yr - ₹6.5 L/yr |
Associate
3.1k
salaries
| ₹2 L/yr - ₹5.5 L/yr |
Senior Associate
2.6k
salaries
| ₹4 L/yr - ₹9 L/yr |
Software Developer
2.3k
salaries
| ₹22.9 L/yr - ₹42.8 L/yr |
Flipkart
TCS
Netflix