Filter interviews by
Minimize the absolute difference between sums of two subsets from a given array of non-negative integers.
Use dynamic programming to solve the problem efficiently.
Calculate the total sum of the array, S. The goal is to find a subset with a sum close to S/2.
Create a boolean DP array where dp[i] indicates if a subset with sum i can be formed.
Iterate through the array and update the DP array for possible sums.
The mini...
Determine if two binary trees are mirrors by comparing their structure and node values recursively.
Two trees are mirrors if their root nodes are the same and their subtrees are mirrors.
Check left subtree of tree1 with right subtree of tree2 and vice versa.
Example: Tree1: 1 / \ 2 3 and Tree2: 1 / \ 3 2 are mirrors.
Base case: If both trees are null, they are mirrors. If one is null, they are not.
The Two Sum problem involves finding two numbers in an array that add up to a specific target sum.
Use a hash map to store numbers and their indices for quick lookup.
Iterate through the array, calculating the complement (target - current number).
Check if the complement exists in the hash map; if yes, return the indices.
Example: For nums = [2, 7, 11, 15] and target = 9, return indices [0, 1] (2 + 7 = 9).
Time complex...
A queue is a linear data structure that follows the First-In-First-Out (FIFO) principle for managing data.
Elements are added at the rear and removed from the front.
Common operations include enqueue (adding) and dequeue (removing).
Used in scenarios like print job management and task scheduling.
Example: A line of customers at a bank where the first customer served is the first to leave.
What people are saying about Google
OOP (Object-Oriented Programming) is a programming paradigm based on objects and classes, promoting code reusability and modularity.
Encapsulation: Bundling data and methods that operate on the data within one unit (e.g., a class).
Inheritance: Mechanism where a new class inherits properties and behavior from an existing class (e.g., a 'Dog' class inheriting from an 'Animal' class).
Polymorphism: Ability to present t...
A stack is a linear data structure that follows the Last In First Out (LIFO) principle for managing data.
Elements are added and removed from the top of the stack.
Common operations include push (add), pop (remove), and peek (view top element).
Example: A stack of plates where you can only add or remove the top plate.
Used in function call management in programming languages.
Can be implemented using arrays or linked l...
I bring a unique blend of technical skills, problem-solving abilities, and a passion for innovation that aligns with your team's goals.
Strong technical skills: Proficient in multiple programming languages like Python, Java, and C++.
Problem-solving mindset: Successfully developed a solution that reduced processing time by 30% in a previous project.
Team player: Collaborated with cross-functional teams to deliver a p...
ArrayList uses dynamic arrays, while LinkedList uses doubly linked nodes for storage, affecting performance and use cases.
ArrayList is backed by a dynamic array, allowing fast random access (O(1)). Example: accessing elements by index.
LinkedList consists of nodes that hold data and references to the next and previous nodes, making insertions/removals faster (O(1)) at both ends.
ArrayList has a fixed size, requiring...
== checks reference equality, while .equals() checks value equality in Java objects.
== compares memory addresses (references) of objects.
Example: String a = new String("test"); String b = new String("test"); a == b returns false.
.equals() compares the actual content of objects.
Example: a.equals(b) returns true for the same content.
Use == for primitive types (int, char, etc.) and .equals() for object comparisons.
Im...
Design a news aggregation platform similar to Google News.
Implement a user-friendly interface with customizable news categories.
Utilize machine learning algorithms to personalize news recommendations.
Include features like trending topics, saved articles, and notifications.
Partner with reputable news sources for reliable content.
Optimize for speed and performance to handle large amounts of data.
Ensure data privacy ...
I appeared for an interview in Feb 2025, where I was asked the following questions.
I appeared for an interview in Jun 2025, where I was asked the following questions.
Minimize the absolute difference between sums of two subsets from a given array of non-negative integers.
Use dynamic programming to solve the problem efficiently.
Calculate the total sum of the array, S. The goal is to find a subset with a sum close to S/2.
Create a boolean DP array where dp[i] indicates if a subset with sum i can be formed.
Iterate through the array and update the DP array for possible sums.
The minimum d...
Determine if two binary trees are mirrors by comparing their structure and node values recursively.
Two trees are mirrors if their root nodes are the same and their subtrees are mirrors.
Check left subtree of tree1 with right subtree of tree2 and vice versa.
Example: Tree1: 1 / \ 2 3 and Tree2: 1 / \ 3 2 are mirrors.
Base case: If both trees are null, they are mirrors. If one is null, they are not.
I applied via Campus Placement and was interviewed in Dec 2024. There were 2 interview rounds.
The coding questions were at Leetcode difficulty level and were derived from the Striver sheet.
I applied via Campus Placement and was interviewed in Dec 2024. There were 4 interview rounds.
It's good and many more things are pending
Very good it was very good best nice very nice
God food good water and good everything good
Name is a unique identifier given to an individual to distinguish them from others.
Name is used for identification and communication purposes.
Names are often chosen by parents at birth, but can also be changed legally.
Names can have cultural, religious, or personal significance.
Some names are passed down through generations in families.
Nicknames or aliases may also be used in addition to a person's given name.
Find unique triplets in an array that sum up to zero.
Sort the array first to easily identify duplicates.
Use two pointers technique to find the triplets.
Skip duplicates to avoid duplicate triplets.
Handle edge cases like all zeros or all positive/negative numbers.
Time complexity can be improved to O(n^2) using two pointers approach.
Rotate an n x n 2D matrix by 90 degrees clockwise in-place without using extra space.
Iterate through each layer of the matrix, swapping elements in groups of 4
Use variables to store temporary values during swapping
Reverse the rows of the matrix to rotate it 90 degrees clockwise
I appeared for an interview in Dec 2024.
Maximal Product when cutting rope involves finding the best way to cut a rope to maximize the product of the lengths.
Divide the rope into pieces of length 2 or 3 for maximum product.
For a rope of length 10, cutting it into three pieces of length 3 and one piece of length 1 gives a product of 27.
Using dynamic programming, store results of subproblems to avoid redundant calculations.
The formula for the maximum product ca...
2 leetcode hard questions
I appeared for an interview in Jan 2025, where I was asked the following questions.
Some of the top questions asked at the Google Software Engineer interview -
The duration of Google Software Engineer interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 110 interview experiences
Difficulty level
Duration
based on 149 reviews
Rating in categories
Gurgaon / Gurugram,
Bangalore / Bengaluru
Not Disclosed
Software Engineer
2.6k
salaries
| ₹34.8 L/yr - ₹60 L/yr |
Software Developer
2.3k
salaries
| ₹33.5 L/yr - ₹61.9 L/yr |
Senior Software Engineer
1.2k
salaries
| ₹34.7 L/yr - ₹70 L/yr |
Data Analyst
426
salaries
| ₹15.3 L/yr - ₹28 L/yr |
Sde1
425
salaries
| ₹32.2 L/yr - ₹60 L/yr |
Yahoo
Amazon
Microsoft Corporation