Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I was interviewed before Nov 2020.
Round duration - 45 minutes
Round difficulty - Medium
The interview was with a Korean employee.
Given an undirected graph with V vertices and E edges, your task is to find all the bridges in this graph. A bridge is an edge that, when removed, increases the number of...
Find all the bridges in an undirected graph.
Use Tarjan's algorithm to find bridges in the graph.
A bridge is an edge whose removal increases the number of connected components.
Check for bridges by removing each edge and checking the number of connected components.
Return the edges that are bridges in non-decreasing order.
Round duration - 45 Minutes
Round difficulty - Medium
Interviewer was an Indian employee.
You are provided with a string STR
of length N
. The goal is to identify the longest palindromic substring within this string. In cases where multiple palind...
Identify the longest palindromic substring in a given string.
Iterate through the string and expand around each character to find palindromes
Keep track of the longest palindrome found
Return the longest palindrome with the smallest start index
Round duration - 45 Minutes
Round difficulty - Hard
Interviewer was an Indian employee.
You are provided with a sorted dictionary (by lexical order) in an alien language. Your task is to determine the character order of the alien language from this dictiona...
Given a sorted alien dictionary in an array of strings, determine the character order of the alien language.
Iterate through the words in the dictionary to build a graph of character dependencies.
Perform a topological sort on the graph to determine the character order.
Return the character order as a list of characters.
Round duration - 45 Minutes
Round difficulty - Hard
Interviewer was an Indian employee.
The Ninja has a robot which navigates an infinite number line starting at position 0 with an initial speed of +1. The robot follows a set of instructions which includes ‘A’ (Acceler...
Determine the minimum length of instruction sequence for a robot to reach a given target on an infinite number line.
Start at position 0 with speed +1, update position and speed based on 'A' and 'R' instructions
For each test case, find the shortest sequence of instructions to reach the target
Consider both positive and negative positions for the robot
Tip 1 : Do competitive coding in 1st and 2nd year.
Tip 2 : Practice basic questions before starting complex problem.
Tip 3 : Start doing mock interviews from the end of 5th semester. It gives a lot of confidence.
Tip 1 : Adding competitive programming ranks add value.
Tip 2 : You should have some good project which you can explain nicely.
I was interviewed before Nov 2020.
Round duration - 60 Minutes
Round difficulty - Easy
Round duration - 90 minutes
Round difficulty - Easy
You are provided with a sorted dictionary (by lexical order) in an alien language. Your task is to determine the character order of the alien language from this dictiona...
Given a sorted alien dictionary, determine the character order of the alien language.
Create a graph data structure to represent the relationships between characters based on the given dictionary.
Perform a topological sort on the graph to determine the character order of the alien language.
Return the character array obtained from the topological sort as the final output.
Preeti plans to shop for her father's birthday at a store with unlimited quantities of N different items. She has a budget that allows her to buy a maximum of K items. Hel...
Calculate the number of ways Preeti can purchase items within budget, considering distinct ways.
Use dynamic programming to calculate the number of ways to purchase items within budget
Consider different scenarios where Preeti buys different quantities of each item
Return the result modulo 10^9 + 7 to handle large answers
Round duration - 60 Minutes
Round difficulty - Easy
Basic DBMS problems.
Round duration - 30 Minutes
Round difficulty - Easy
He asked basic Database and oops questions and discussion about my projects.
Round duration - 50 Minutes
Round difficulty - Easy
It was evening. Since it was a telephonic interview so all at the home. NOthing different. About my soft skills, resume, and some basic coding stuff. Why google? Where do you see yourself in 5 years?
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...
Count the number of distinct ways to climb to the Nth stair by climbing one or two 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 where N=0 and N=1 separately.
Apply modulo 10^9+7 to avoid overflow in the final result.
Tip 1 : Over-communication is key
Tip 2 : Self-Advocacy and Initiative are twice as important when working virtually.
Tip 3 : Relaxed and Fresh
Tip 1 : Neat and clean. Use a professional font. Include only the most relevant information and put the most important information first. Use active language.
Tip 2 : Specific about the projects they required and your projects should be in bold.
I was interviewed before Sep 2020.
Round duration - 60 Minutes
Round difficulty - Easy
It was a hangout video call. The interviewer asked me these questions. Tell me about yourself and 1 coding question.
Your task is to find the total count of special numbers within a range from 1 to a given integer, 'MAXVAL'. A special number is defined as a number whose digits, when rot...
Count the total number of special numbers within a given range by rotating digits 180 degrees.
Create a function to check if a number is a special number by rotating its digits.
Iterate through the range from 1 to MAXVAL and count the special numbers.
Handle the digit rotation mapping for 0, 1, 6, 8, 9.
Return the count of special numbers for each test case.
Round duration - 60 Minutes
Round difficulty - Easy
This was an On-site (Behavioural Round) interview. He asked me these questions.
Round duration - 60 Minutes
Round difficulty - Easy
This was another On-site ( DS & Algo) algorithm.
As the Government ramps up vaccination drives to combat the second wave of Covid-19, you are tasked with helping plan an effective vaccination schedule. Your goal is...
Given constraints, find max vaccines administered on a specific day during a vaccination drive.
Iterate through each test case and calculate the maximum number of vaccines distributed on the specified day.
Distribute vaccines evenly across days while maximizing the number on the specified day.
Ensure that the sum of vaccines administered does not exceed the maximum allowed.
Consider edge cases like when the number of days ...
Round duration - 60 Minutes
Round difficulty - Easy
Another On-site ( DS & Algo) interview.
Given an array/list representing boards, where each element denotes the length of a board, and a number ‘K’ of available painters, determine the minimum time required...
Determine the minimum time required to paint all boards with given constraints.
Use binary search to find the minimum and maximum possible time to paint all boards.
Iterate through the boards and assign them to painters based on the time constraints.
Calculate the total time taken to paint all boards with the assigned painters.
You are given an array/list CHOCOLATES
of size 'N', where each element represents the number of chocolates in a packet. Your task is to distribute these chocolates among 'M'...
Distribute chocolates among students to minimize the difference between the largest and smallest number of chocolates.
Sort the array of chocolates.
Use sliding window technique to find the minimum difference between the largest and smallest number of chocolates.
Return the minimum difference as the output.
Round duration - 60 Minutes
Round difficulty - Easy
Another On-site ( DS & Algo) interview.
You are given an array of integers and an integer K
. For each array element, you can adjust it by increasing or decreasing it by a value of K
. Your goal is to minim...
Given an array of integers and an integer K, minimize the difference between the maximum and minimum elements after adjusting each element by +/- K.
Sort the array in non-decreasing order.
For each element, calculate the difference between the current element and the next element.
Adjust the element by adding or subtracting K to minimize the difference.
Return the minimum possible difference between the maximum and minimum
Round duration - 60 minutes
Round difficulty - Easy
On-site ( DS & Algo) interview.
Google mainly focuses on logic and how you are coming with a solution. It notes down each and every small mistake. Interviewers are really very helpful. They expect clear code with an optimal approach.
Given a binary square matrix 'ARR' with 'N' rows and 'N' columns, where '0' represents water and '1' represents land.
Determine the water cell whose distanc...
Find the water cell farthest from land in a binary matrix using Manhattan distance.
Iterate through the matrix to find all land cells and water cells
Calculate the Manhattan distance of each water cell to the nearest land cell
Return the maximum distance found
Tip 1 : Participate in coding contests.
Tip 2 : Practice as many questions as you can.
Tip 3 : Do some good projects.
Tip 1 : Have some projects on your resume.
Tip 2 : Do not put false things on your resume.
What people are saying about Google
I applied via Campus Placement and was interviewed before Nov 2021. There were 3 interview rounds.
Numerical and logical aptitude test
There are 5 rounds on datastructure and algorithm
Google interview questions for designations
Multiple data structures are used to print nodes in a specific order. One data structure cannot be used alone.
The given order suggests a depth-first search traversal of a tree-like structure.
A stack can be used to keep track of the nodes to be visited.
A queue can be used to store the children of a node in the order they are visited.
An array can be used to store the nodes in the required order.
A linked list can be used ...
Find largest pen using minimum comparisons with tops.
Divide pens into two groups and compare largest pen from each group with largest top.
Repeat the process with the group containing the largest pen until only one pen is left.
The remaining pen is the largest pen.
Total number of comparisons required is 2n-3.
Given n dice with 'a' sides and sum b, return no. of ways to obtain b. Optimize time and space complexity.
Use dynamic programming to reduce time complexity
Create a 2D array to store the number of ways to obtain each sum for each number of dice
Use rolling arrays to optimize space complexity
Example: n=2, a=6, b=7 -> 6 ways to obtain sum 7
Example: n=3, a=4, b=8 -> 21 ways to obtain sum 8
Sort 128 GB data on 2 machines with 64 GB RAM each. Extend to 1000 machines.
Use external sorting algorithm like merge sort or quick sort
Divide data into smaller chunks and sort them individually
Merge sorted chunks using additional RAM
For 1000 machines, use distributed sorting algorithms like MapReduce or Hadoop
Ensure data consistency and fault tolerance in distributed sorting
Get interview-ready with Top Google Interview Questions
Algorithm to find 2 numbers in an array whose sum is equal to a target integer
Use a hash table to store the difference between target and each element in the array
Iterate through the array and check if the current element exists in the hash table
Return the pair of elements that sum up to the target integer
Write a select statement to retrieve work of all users who belong to my team.
Join USERS and WORK tables on user_id
Join MANAGERS and USERS tables on team
Filter by manager_id
The manifest.json file contains the most important information of a Chrome extension.
The manifest.json file includes the version number, permissions, content scripts, background scripts, and other important details.
It is located in the root directory of the extension.
It is required for all Chrome extensions.
Example: "manifest_version": 2, "version": "1.0", "permissions": ["tabs", "storage"]
Hashtable is faster for finding an item than a sorted list.
Hashtable has constant time complexity O(1) for finding an item.
Sorted list has logarithmic time complexity O(log n) for finding an item.
Hashtable uses hashing to directly access the item's location.
Sorted list requires binary search to find the item's location.
Hashtable is ideal for large datasets with frequent lookups.
Sorted list is ideal for datasets that re
JSON and XML are the most popular data interchange formats when using APIs.
JSON (JavaScript Object Notation) is a lightweight format that is easy to read and write. It is widely used in web APIs.
XML (Extensible Markup Language) is a more complex format that is also widely used in web APIs.
Other formats include CSV (Comma Separated Values), YAML (YAML Ain't Markup Language), and Protocol Buffers.
Popular APIs for Social Commerce services
Facebook Graph API for social media integration
Instagram API for photo sharing and tagging
Twitter API for real-time updates and customer engagement
Pinterest API for product discovery and sharing
Google Maps API for location-based services
PayPal API for secure payment processing
Use a script to iterate through each HTML page, locate phone numbers, and update their format.
Write a script using a programming language like Python or JavaScript to iterate through each HTML page
Use regular expressions to locate phone numbers in the pages
Update the format of the phone numbers as needed (e.g. adding country code, changing separators)
Save the updated HTML pages with the new phone number format
Designing Google Suggest system
I would start by analyzing user search patterns and frequently searched keywords
Then, I would create a database of these keywords and their associated search results
I would use indexing services to quickly retrieve relevant results for each keyword
I would also implement machine learning algorithms to improve the accuracy of suggestions over time
Check if a number is a power of 2 and odd.
To check if a number is a power of 2, use bitwise AND operator with the number and its predecessor. If the result is 0, it is a power of 2.
To check if a number is odd, use modulus operator with 2. If the result is 1, it is odd.
Example code in Python:
def is_power_of_two(num):
return num & (num - 1) == 0
def is_odd(num):
return num % 2 == 1
By introducing new menu items, optimizing pricing strategy, and improving the overall dining experience.
Conduct a survey to understand the preferences of employees
Introduce healthy and affordable meal options
Offer discounts for bulk orders or loyalty programs
Partner with local vendors to source fresh ingredients
Improve the ambiance and seating arrangements
Implement online ordering and delivery services
Reviewing 30 million ads from 42 languages in Google AdWords and rejecting non-compliant ads requires a systematic approach.
Create a set of specific rules and guidelines for ad compliance
Use automated tools to filter out ads that violate the rules
Assign a team of reviewers to manually check the remaining ads
Ensure that the reviewers are fluent in the languages of the ads they are reviewing
Regularly update the rules and...
Some of the top questions asked at the Google Software Developer interview -
The duration of Google Software Developer interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 106 interviews
3 Interview rounds
based on 140 reviews
Rating in categories
Software Engineer
1.8k
salaries
| ₹0 L/yr - ₹0 L/yr |
Software Developer
1.1k
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Software Engineer
680
salaries
| ₹0 L/yr - ₹0 L/yr |
Data Scientist
274
salaries
| ₹0 L/yr - ₹0 L/yr |
Sde1
257
salaries
| ₹0 L/yr - ₹0 L/yr |
Yahoo
Amazon
Microsoft Corporation