American Express
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I appeared for an interview before Dec 2020.
Round duration - 90 minutes
Round difficulty - Medium
It consist three question - first que is of related to tree and i gave difficulty level of this question as hard. second que is of based on logical and reasoning , it is medium level question and third que can be done by map and it is also medium level que.
In codility platform we are not able to see hidden test cases whether it is satisfied or not . we just have to submit after passing sample testcases.
Find the minimum number of swaps required to sort a given array of distinct elements in ascending order.
T (number of test cases)
For each test case:
N (siz...
The minimum number of swaps required to sort a given array of distinct elements in ascending order.
Use a graph-based approach to find cycles in the array
Count the number of swaps needed to fix each cycle
Sum up the swaps needed for all cycles to get the total minimum swaps
Given an array of integers, determine the maximum sum of a subsequence without choosing adjacent elements in the original array.
The first line consists of an...
Find the maximum sum of a subsequence without choosing adjacent elements in an array.
Use dynamic programming to keep track of the maximum sum at each index, considering whether to include or exclude the current element.
At each index, the maximum sum is either the sum of the current element and the sum two positions back, or the sum at the previous index.
Iterate through the array and update the maximum sum accordingly.
E...
Given a binary tree, your task is to print the left view of the tree.
The input will be in level order form, with node values separated by a...
Print the left view of a binary tree given in level order form.
Traverse the tree level by level and print the first node encountered at each level
Use a queue to perform level order traversal
Keep track of the current level and the maximum level seen so far
Round duration - 30 minutes
Round difficulty - Medium
basically this round is just same as HR round . they asked me behavioural questions and about my projects , hackathon. the timing is mid noon and interviewer is supportive , it makes first comfortable then start questioning . for this round i suggest be honest , don't just express your qualities but trying to show them by your skills and work.
Tip 1 : all we know focus on ds and algorithms is must but how should we prepare ? so , the answer is read concepts and then practice question topic wise or company wise in gfg.
Tip 2 : do focus on cp it is must to clear very first coding round. Also many of them do cp but in their comfort zone that means those question from which they have good hold but i say this would not give any benefit . so , solve que out of comfort zone , which takes time but is is most efficient way.
Tip 3 : Also balance between cp and projects is must.
Tip 1 : it is crisp . for ex - you have a good knowledge on java, cpp , c , python . and lets say you have basic knowledge of html,css then don't mention these subjects.
Tip 2 : Achievements should be in reverse chronological order like first focus on college achievements , then on school.
Tip 3 : i saw like many of them made just one resume and use for all , but i suggest each time made resume according to post you apply for and in which company. which increases your chances in shortlisted candidates.
I appeared for an interview before Sep 2020.
Round duration - 120 minutes
Round difficulty - Easy
It consisted of 3 coding questions which were purely based on Data Structures and Algorithms.
Question 1 - Find the length of the longest switching sub-array. An array is called switching if all numbers in even positions are equal and all numbers in odd positions are equal.
Question 2 - It was a long passage question on Dynamic Programming but the solution was really easy.
Question 3 - Given a string S consisting of N lowercase letters, return the minimum number of letters that must be deleted to obtain a word in which every letter occurs a unique number of times. Ex - "aaaabbbb" should return 1, as when we delete 1 a or 1 b , a and b will have different frequencies.
The major point to note in the coding round was that they did not have any time or space limit, so brute force solutions were also accepted.
The result of my test was declared just as the test ended and I scored a 100%, but they took a long time to release the final shortlist. There was a gap of about a week between the test and interviews.
Determine the length of the longest contiguous subarray in a given array of positive integers, where the subarray qualifies as 'switching'. An array is defined...
Find the length of the longest switching subarray in a given array of positive integers.
Iterate through the array and keep track of the longest switching subarray found so far.
Check if the numbers at even and odd positions are identical to determine a switching subarray.
Return the length of the longest switching subarray.
Example: For input [1, 4, 1, 4, 3, 2, 3, 0], the longest switching subarray is [1, 4, 1, 4] with le
Given a string 'STR' with lowercase letters, determine the minimum number of deletions required to ensure that every letter in the string appears a unique number of time...
The task is to find the minimum number of deletions needed in a string to ensure each character appears a unique number of times.
Iterate through the string and count the frequency of each character
Track the frequencies in a hashmap
Identify the characters with duplicate frequencies and calculate the minimum deletions needed
Return the minimum number of deletions for each test case
Round duration - 40 minutes
Round difficulty - Easy
Amex came for two profiles - Tech Role and Analyst, 19 and 23 people respectively were shortlisted for the interviews. Fortunately, I was shortlisted for both the roles. I was asked basic question of C++ and it was majorly an HR Round
Round duration - 20 minutes
Round difficulty - Easy
It was a fairly simple round conssting of 5 - 6 questions related to coding, puzzles and me.
What are your interests?
What projects have you done and your field of interest?
Round duration - 50 minutes
Round difficulty - Easy
This round was purely technical
No introduction was done, straight to the point
My preference was the Tech Role, so as I was selected in this, I never had to give interviews for the Analyst role. In total 5 people were selected in the Analyst profile and 4 in the Tech profile.
In the end, I was offered a 6 months internship at Amex.
Given a singly linked list of integers, determine if it is a palindrome. A linked list is considered a palindrome if it reads the same forward and backward.
Check if a singly linked list is a palindrome by comparing elements from both ends.
Traverse the linked list to find the middle point
Reverse the second half of the linked list
Compare the first half with the reversed second half to check for palindrome
Example: Input: 1 2 3 2 1 -1, Output: true
Tip 1 : Do practice a lot of data structures from renowned websites like LeetCode and also from CodeZen
Tip 2 : In your introduction, when asked, you just need to tell your life story.
Tip 3 : Maintain eye contact with the interviewers and clarify every details about the question before proceeding to the solution
Tip 1: Add most recent and relevant projects only
Tip 2: you should know each and everything written on your resume
I appeared for an interview before Sep 2020.
Round duration - 120 minutes
Round difficulty - Easy
The coding round was at 11 am in the morning. The questions were of medium level. The questions were purely based on Data Structures and Algorithms.
Given an array of integers ARR
of length 'N' and a positive integer 'K', find the maximum elements for each contiguous subarray of size K.
ARR = [3, 4,...
Implement a function to find maximum elements for each contiguous subarray of size K in an array of integers.
Iterate through the array and maintain a deque to store the indices of elements in decreasing order.
Pop elements from the deque that are out of the current window and add the maximum element to the result array.
Return the result array containing maximum elements for each subarray of size K.
Given a string S
of length N
and an integer K
, find the length of the longest substring that contains at most K
distinct characters.
The first...
Find the length of the longest substring with at most K distinct characters in a given string.
Use a sliding window approach to keep track of the characters and their counts in the substring.
Maintain a hashmap to store the characters and their frequencies within the window.
Update the window size and characters count as you iterate through the string.
Keep track of the longest substring length with at most K distinct char...
Round duration - 45 minutes
Round difficulty - Easy
I was selected for the interview. The interview was conducted early in the morning at 10 am. The interviewer was very friendly and calm.
Round duration - 30 minutes
Round difficulty - Easy
This round was a mix of technical, puzzles and HR. The interview was fairly easy, The interviewer asked for my introduction and continued with the interview then.
Develop a Stack Data Structure to store integer values using two Queues internally.
Your stack implementation should provide these public functions:
Implement a stack using two queues to store integer values with specified functions.
Use two queues to simulate stack operations efficiently.
Maintain one queue for storing elements and another for temporary storage during push operation.
Ensure proper handling of edge cases like empty stack or invalid operations.
Example: Push operation involves transferring elements from one queue to another before adding the new element...
Round duration - 45 minutes
Round difficulty - Easy
This was the last round for getting selected as an intern. However, this was a pure technical round. Only coding questions were asked. Also, at the end he asked me the question, Why American express?
For a given singly linked list, identify if a loop exists and remove it, adjusting the linked list in place. Return the modified linked list.
A...
Detect and remove loop in a singly linked list in place with O(n) time complexity and O(1) space complexity.
Use Floyd's Cycle Detection Algorithm to identify the loop in the linked list.
Once the loop is detected, use two pointers to find the start of the loop.
Adjust the pointers to remove the loop and return the modified linked list.
You are provided with two sorted lists of closed intervals, INTERVAL1
and INTERVAL2
. A closed interval [x, y] (x < y) signifies the set of real numbers z such that x ...
Find the intersections of two sorted lists of closed intervals.
Iterate through both interval lists to find intersections
Compare the intervals and find the common range
Handle cases where there is no intersection between intervals
Tip 1 : Have confidence in Data Structures and Algorithms. Have your concepts very clear and then pick one coding platform( leetcode, InterviewBit, CodeZen, GeeksForGeeks) and try to practice around 7-10 questions everyday with varying difficulty and different topics.Also solving questions is not enough, try to optimize it. Analyze its space and time complexities.
Tip 2 : Study properly about OOPS concepts. Coding Ninja's Data Structures and Algorithms course is great for preparing the OOPS concepts specifically. For OS and DBMS refer to your college notes and GeekForGeeks articles.
Tip 3 : Keep participating in coding contests. It helps you increase your problem solving skills.
Tip 1 : Add those skills, projects and achievements which are relevant to your role.
Tip 2 : Do not fake any skills, projects or achievements.
Tip 3 : You do need to have a several number of projects. 1 good project with good knowledge of it will also do fine. The similar rule goes for skills also.
Tip 4 : Try to write achievements which proves your technical skills, leadership quality, communication skills or teamwork.
What people are saying about American Express
I appeared for an interview before Nov 2020.
Given a list of cities numbered from 0 to N-1 and a matrix DISTANCE
consisting of 'N' rows and 'N' columns, representing the distances between each pair of cities, find the sho...
Tip 1 : Do competitive programming in 1st and 2nd yr
Tip 2 : Clear the basic of all data structures, algorithms and time, space complexities before trying leetcode.
Tip 3 : Dedicate 2-3 months to Interviewbit.
Tip 1 : Have atleast 2 projects.
Tip 2 : Competitive Coding ranks gives advantage.
American Express interview questions for designations
I applied via Naukri.com and was interviewed in Aug 2020. There were 3 interview rounds.
To check palindrome and anagram of a string with O(n), use a hash table to store character frequencies.
Create a hash table to store the frequency of each character in the string.
For palindrome, check that no more than one character has an odd frequency.
For anagram, compare the hash tables of the two strings.
If the hash tables are equal, the strings are anagrams.
If the hash tables differ by only one character, the strin...
Optimized solutions and core principles applied in OOPS
Encapsulation, Inheritance, Polymorphism, Abstraction are core principles of OOPS
Optimized solutions can be achieved through efficient algorithms and data structures
Design patterns like Singleton, Factory, Observer can also be used for optimized solutions
I appeared for an interview before May 2021.
Round duration - 45 Minutes
Round difficulty - Hard
Given an integer array 'ARR' of size 'N' containing numbers from 0 to (N - 2). Each number appears at least once, and there is one number that appears twice. Yo...
Find the duplicate number in an integer array containing numbers from 0 to (N - 2).
Iterate through the array and keep track of the frequency of each number using a hashmap.
Return the number that appears twice in the array.
The duplicate number is always present in the given array.
Round duration - 50 Minutes
Round difficulty - Easy
Sort an unsorted array of non-negative integers using the Bubble Sort algorithm, which swaps adjacent elements if they are not in the correct order to sort the array in non-d...
Bubble Sort is used to sort an array of non-negative integers in non-decreasing order by swapping adjacent elements if they are not in the correct order.
Iterate through the array and compare adjacent elements, swapping them if they are in the wrong order.
Repeat this process until the array is sorted in non-decreasing order.
Time complexity of Bubble Sort is O(n^2) in worst case.
Example: For input [6, 2, 8, 4, 10], the o
Round duration - 60 Minutes
Round difficulty - Medium
You are tasked with finding the shortest path between two houses in the city of Ninjaland, represented as an unweighted graph. The city has N
houses numbered from 1 ...
Find the shortest path between two houses in a city represented as an unweighted graph.
Use breadth-first search (BFS) algorithm to find the shortest path in an unweighted graph.
Start BFS from the source house and keep track of the shortest path to each house.
Once the destination house is reached, backtrack to find the shortest path.
Consider using a queue data structure to implement BFS efficiently.
Round duration - 60 Minutes
Round difficulty - Easy
Tip 1 : online resources
Tip 2 : cracking the coding interview by Gayle laykemann this is one of the best book for learning the concept at the initial level. Start practicing the approaches mention in the book once done apply the same to similar level pattern questions.
Tip 3 : geeks for geeks start from school level and then move towards easy medium and hard once done practice the previous year questions
Tip 1 : precise clear concise and well written
Tip 2 : mentions the skills sets along with the projects
I appeared for an interview before Oct 2020.
Round duration - 180 Minutes
Round difficulty - Hard
There will be 4 programming questions( 3 medium, 1 hard)
Participants can attempt as many questions as they can within the test duration. The more the number of questions they attempt and get correct, the better their chances of getting shortlisted for interviews.
It was camera monitored. Don't change the tab while attempting the test.
Given an infinite supply of coins of varying denominations, determine the total number of ways to make change for a specified value using these coins. If it's not possible to make...
The task is to find the total number of ways to make change for a specified value using given denominations.
Use dynamic programming to keep track of the number of ways to make change for each value up to the target value.
Iterate through each denomination and update the number of ways to make change for each value based on the current denomination.
The final answer will be the number of ways to make change for the target...
You are provided with a number of stairs, and initially, you are located at the 0th stair. You need to reach the Nth stair, and you can climb one or tw...
The problem involves finding the number of distinct ways to climb N stairs by taking 1 or 2 steps at a time.
Use dynamic programming to solve the problem efficiently.
The number of ways to reach the Nth stair is the sum of the number of ways to reach the (N-1)th stair and the (N-2)th stair.
Handle base cases for N=0 and N=1 separately.
Consider using modulo operation to avoid overflow when dealing with large numbers.
You are provided with two sorted linked lists. Your task is to merge them into a single sorted linked list and return the head of the combined linked list.
...Merge two sorted linked lists into a single sorted linked list without using additional space.
Create a dummy node to start the merged list
Compare the values of the two linked lists and add the smaller value to the merged list
Move the pointer of the merged list and the respective linked list with the smaller value
Continue this process until one of the linked lists is fully traversed
Append the remaining elements of the o
Given a pattern as a string and a set of words, determine if the pattern and the words list align in the same sequence.
T (number of test cases)
For each test ca...
Given a pattern and a list of words, determine if the words align with the pattern.
Iterate through the pattern and words simultaneously to check for alignment.
Use a hashmap to store the mapping between characters in the pattern and words.
Return 'True' if the words match the pattern sequence, else return 'False'.
Round duration - 75 Minutes
Round difficulty - Easy
This round was held online over Webex and CodePair (a screen-sharing code editor ).
The interviewer made it clear in the beginning that he wanted to know me as a person, what my interests are, and how well I am as a problem solver. The interview started with my introduction, my interests, coding languages I am comfortable with, my previous internship experiences, and my projects. He then asked some questions about OOPS and data structures. After judging my problem-solving skills and thought process from previous questions, he gave me 2 coding questions to solve. I was able to solve both of them.
You are given an array 'ARR'
of size 'N'
consisting of positive integers. Your task is to determine the minimum number of operations required to make all elements in t...
The minimum operations problem involves finding the minimum number of operations required to make all elements in an array equal.
Iterate through the array to find the maximum and minimum values.
Calculate the difference between the maximum and minimum values.
The minimum number of operations needed is the difference between the maximum and minimum values.
Determine if a given singly linked list of integers forms a cycle or not.
A cycle in a linked list occurs when a node's next
points back to a previous node in the ...
Detect if a singly linked list forms a cycle by checking if a node's next points back to a previous node.
Use Floyd's Tortoise and Hare algorithm to detect a cycle in the linked list.
Initialize two pointers, slow and fast, and move them at different speeds through the list.
If there is a cycle, the fast pointer will eventually meet the slow pointer.
If the fast pointer reaches the end of the list (null), there is no cycle
Tip 1 : The interviewer will not only look at your technical skills but also your team building and leadership qualities
Tip 2 : It's okay if you don't have an optimal solution in one go. Try to break the problem and don't give up.
Tip 3 : Practice at least 150 Questions on Leetcode covering all topics. Chances of asking tough topics like DP, greedy are less.
Tip 4 : Make sure you have at least 1 project to discuss in depth. Be prepared with all challenges you had while doing the project and how you overcome them.
Tip 5 : If you ever participated in/organized a hackathon/college event, make sure you highlight that. This will make you shine from the rest of the candidates.
Tip 6 : The interviewer might also give you a couple of leadership/team-based scenarios and what will you do in that situation.
Tip 7 : Lastly make sure to read about BNY Mellon and what it do.
Tip 1 : Try to add Experience at the top with a detailed explanation of work done by you
Tip 2 : If No projects and Experience: Try to add Coding profiles, Achievements (Hackathons and Coding Competitions )
Tip 3 : Make sure to highlight any competition/hackathon that you won.
I applied via Recruitment Consultant and was interviewed in Oct 2020. There were 4 interview rounds.
I applied via Recruitment Consulltant and was interviewed before Mar 2021. There was 1 interview round.
Business Analyst
812
salaries
| ₹9.5 L/yr - ₹16.8 L/yr |
Assistant Manager
709
salaries
| ₹14.4 L/yr - ₹42 L/yr |
Senior Analyst
606
salaries
| ₹14.7 L/yr - ₹27 L/yr |
Analyst
543
salaries
| ₹12.7 L/yr - ₹25 L/yr |
Lead Analyst
494
salaries
| ₹4.2 L/yr - ₹13 L/yr |
MasterCard
Wells Fargo
JPMorgan Chase & Co.
HSBC Group