i
Amazon
Proud winner of ABECA 2025 - AmbitionBox Employee Choice Awards
Filter interviews by
The Ninja has been given a challenge by his master to reach the last stone. These stones are represented as an array of numbers. The Ninja can jump using either odd-numbered or even-numbe...
Find the number of starting indices from which a Ninja can reach the last stone by following specific jump rules.
Iterate through the array and keep track of the indices that satisfy the jump rules.
Use dynamic programming to efficiently determine the number of starting indices.
Consider odd and even jumps separately to handle the different conditions.
Example: For the input [10, 13, 12, 14, 15], the Ninja can start a...
ACID properties ensure database transactions are processed reliably and consistently.
Atomicity: Ensures that either all operations in a transaction are completed successfully or none at all.
Consistency: Ensures that the database remains in a valid state before and after the transaction.
Isolation: Ensures that transactions are executed independently and do not interfere with each other.
Durability: Ensures that once...
You are located at point ‘A’, the top-left corner of an M x N matrix, and your target is point ‘B’, the bottom-right corner of the same matrix. Your task is to calculat...
Calculate total unique paths from top-left to bottom-right corner of a matrix by moving only right or down.
Use dynamic programming to solve the problem efficiently.
Create a 2D array to store the number of unique paths for each cell.
Initialize the first row and first column with 1 as there is only one way to reach them.
For each cell (i, j), the number of unique paths is the sum of paths from the cell above and the ...
You are provided with two integers, 'N' and 'D'. Your objective is to determine the square root of the number 'N' with a precision up to 'D' decimal pla...
Implement a function to find the square root of a number with a given precision up to a specified number of decimal places.
Implement a function that takes two integers N and D as input and returns the square root of N with precision up to D decimal places.
Use mathematical algorithms like Newton's method or binary search to approximate the square root with the desired precision.
Ensure that the difference between th...
What people are saying about Amazon
Given a singly linked list of integers, determine if the linked list is a palindrome.
A linked list is considered a palindrome if it reads the same forward...
Check if a given singly linked list of integers is a palindrome or not.
Traverse the linked list to find the middle element using slow and fast pointers.
Reverse the second half of the linked list.
Compare the first half with the reversed second half to determine if it's a palindrome.
Design and implement a Least Recently Used (LRU) cache data structure, which supports the following operations:
get(key)
- Return the value of the key if it exists in the cache...Implement a Least Recently Used (LRU) cache data structure with get and put operations.
Use a combination of a hashmap and a doubly linked list to efficiently implement the LRU cache.
Keep track of the least recently used item and update it accordingly when inserting new items.
Ensure to handle the capacity constraint by evicting the least recently used item when the cache is full.
For get operation, return the value ...
Given an array of integers ARR
of length N
and an integer Target
, your task is to return all pairs of elements such that they add up to the Target
.
The first line c...
Given an array of integers and a target, find all pairs of elements that add up to the target.
Iterate through the array and for each element, check if the difference between the target and the element exists in a hash set.
If it exists, then print the pair (element, target-element), else add the element to the hash set.
If no pair is found, print (-1, -1).
Given a circular array ARR
of size N
consisting of positive and negative integers, determine if there is a cycle present in the array. You can make movements based on ...
Determine if a circular array has a cycle present, following specific movement rules.
Iterate through the array and check for cycles following the given movement rules.
Keep track of visited indices to detect cycles.
Handle both clockwise and counterclockwise movements separately.
Return 'True' if a cycle is found, 'False' otherwise.
Given 'N' ropes, each having different lengths, your task is to connect these ropes into one single rope. The cost to connect two particular ropes is equal to the sum of the...
Connect ropes with different lengths into one single rope with minimum cost by merging the smallest ropes first.
Sort the lengths of ropes in ascending order.
Merge the two smallest ropes at each step to minimize cost.
Keep track of the total cost as you merge the ropes.
Repeat the merging process until all ropes are connected.
Return the total cost as the minimum cost to connect all ropes.
Given a positive integer N
, you are required to generate a list of integers of size 2N
such that it contains all the integers from 1 to N
, both included, twice. These int...
Generate Langford pairing for given N, return 'Valid' if correct, 'Invalid' if not.
Generate a list of integers of size 2N with all integers from 1 to N twice.
Arrange integers according to Langford pairing rules.
Return 'Valid' if pairing is correct, 'Invalid' if not.
If no valid pairing possible, return list with only -1 element.
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.1k
salaries
| ₹1.8 L/yr - ₹5 L/yr |
Transaction Risk Investigator
3.1k
salaries
| ₹2.9 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
| ₹25.3 L/yr - ₹44 L/yr |
Flipkart
TCS
Netflix