i
Expedia Group
Filter interviews by
They have given coding test where 2 medium to easy level questions where asked
posted on 19 Sep 2024
Easy questions and mostly implementation based.
Given a number x, find the minimum number of operations (decrement by 1 or multiply by 2) to convert it to y.
Use a breadth-first search (BFS) approach to explore all possible operations and find the minimum number of steps.
Start with x and generate all possible next numbers by decrementing or multiplying by 2.
Keep track of the number of steps taken to reach each number and stop when y is found.
Use a queue to implement ...
I applied via Company Website and was interviewed before Mar 2023. There were 2 interview rounds.
Simple React task, cinema API
A cinema API is a software interface that allows developers to access and interact with cinema-related data and services.
Provides information about movies, showtimes, theaters, and ticket availability
Allows users to search for movies, view trailers, and book tickets
May include features like seat selection, payment processing, and user reviews
Can integrate with external services like payment gateways and movie databases
Expedia Group interview questions for designations
Top trending discussions
PreOrder traversal without recursion is done using a stack to simulate the function call stack.
Create an empty stack and push the root node onto it.
While the stack is not empty, pop a node from the stack and process it.
Push the right child of the popped node onto the stack if it exists.
Push the left child of the popped node onto the stack if it exists.
Yes
Create an empty binary search tree (BST)
Loop over the unsorted array
For each element, insert it into the BST using the appropriate insertion logic
Repeat until all elements are inserted
The resulting BST will be built from the unsorted array
The question asks to find two elements in an array whose sum is equal to a given number.
Iterate through the array and for each element, check if the difference between the given number and the current element exists in the array.
Use a hash set to store the elements as you iterate through the array for efficient lookup.
Return the pair of elements if found, otherwise return a message indicating no such pair exists.
There are two types of triggers: DML triggers and DDL triggers.
DML triggers are fired in response to DML (Data Manipulation Language) statements like INSERT, UPDATE, DELETE.
DDL triggers are fired in response to DDL (Data Definition Language) statements like CREATE, ALTER, DROP.
Examples: A DML trigger can be used to log changes made to a table, while a DDL trigger can be used to enforce certain rules when a table is alt
Yes, triggers can be used with select statements in SQL.
Triggers are database objects that are automatically executed in response to certain events, such as insert, update, or delete operations.
While triggers are commonly used with insert, update, and delete statements, they can also be used with select statements.
Using triggers with select statements allows you to perform additional actions or validations before or af...
Indexing in MySQL improves query performance. There are several types of indexing in MySQL.
Indexes are used to quickly locate data without scanning the entire table.
Types of indexing in MySQL include B-tree, hash, full-text, and spatial indexes.
B-tree indexes are the most common and suitable for most use cases.
Hash indexes are used for exact match lookups.
Full-text indexes are used for searching text-based data efficie...
Engines in MySQL are the underlying software components that handle storage, indexing, and querying of data.
MySQL supports multiple storage engines, each with its own strengths and features.
Some commonly used engines in MySQL are InnoDB, MyISAM, and Memory.
InnoDB is the default engine in MySQL and provides support for transactions and foreign keys.
MyISAM is known for its simplicity and speed but lacks transaction suppo...
Yes, a constructor can be private.
A private constructor can only be accessed within the class itself.
It is often used in singleton design pattern to restrict object creation.
Private constructors are also useful for utility classes that only contain static methods.
I appeared for an interview before Dec 2020.
Round duration - 60 Minutes
Round difficulty - Medium
This round was purely based on Data Structures and Algorithms . One has to be fairly comfortable in solving Algorithmic problems to pass this round . Both the questions asked were quite common and luckily I had already prepared them from CodeStudio and LeetCode.
Given a Binary Tree with 'N' nodes, where each node holds an integer value, your task is to compute the In-Order, Pre-Order, and Post-Order traversals of the binar...
Compute the In-Order, Pre-Order, and Post-Order traversals of a Binary Tree given in level-order format.
Implement functions to perform In-Order, Pre-Order, and Post-Order traversals of a Binary Tree.
Use level-order input to construct the Binary Tree.
Traverse the Binary Tree recursively to generate the required traversals.
Ensure proper handling of null nodes represented by -1 in the input.
Return the three traversals as
Given a Singly Linked List of integers, your task is to reverse the Linked List by altering the links between the nodes.
The first line of input is an intege...
Reverse a singly linked list by altering the links between nodes.
Iterate through the linked list and reverse the links between nodes
Use three pointers to keep track of the current, previous, and next nodes
Update the links between nodes to reverse the list
Return the head of the reversed linked list
Round duration - 45 Minutes
Round difficulty - Medium
This round basically tested some concepts from Data Structures and File Manipulation .
Given two arrays A
and B
with sizes N
and M
respectively, both sorted in non-decreasing order, determine their intersection.
The intersection of two arrays in...
The problem involves finding the intersection of two sorted arrays efficiently.
Use two pointers to iterate through both arrays simultaneously.
Compare elements at the pointers and move the pointers accordingly.
Handle cases where elements are equal and update the intersection array.
Return the intersection array as the result.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
I appeared for an interview before May 2021.
Round duration - 90 minutes
Round difficulty - Medium
Around 65-70 people sat for the test. 15 people were shortlisted. It consisted of the following to be done in 90 minutes.
- 28 MCQs based on core CS
- 2 Coding questions – everyone had different and random questions. Most questions were custom logic based (easy level) including some standard questions – LCS, LIS, topological sort.
Round duration - 60 minutes
Round difficulty - Easy
Interviewer was very friendly. It started with the standard – tell me about yourself / introduce yourself type of question. Then he proceeded and asked two coding questions
Your friend has homework to complete. Help him by removing duplicates from a sorted linked list.
You are given the 'Head' of a sorted linked list. Modify the l...
Remove duplicates from a sorted linked list without adjacent duplicates.
Traverse the linked list while comparing current and next nodes.
If they are equal, skip the next node by updating the current node's next pointer.
Repeat until the end of the list is reached.
You are enrolled as a student and must complete N
courses, numbered from 1 to N, to earn your degree.
Some courses have prerequisites, which means that to take course i
,...
Check if it is feasible to complete all courses with prerequisites.
Create a graph representing the prerequisites with courses as nodes and edges as prerequisites.
Perform a topological sort on the graph to check if there is a cycle (if there is, then it's not feasible to complete all courses).
If there is no cycle, then it is feasible to complete all courses.
Round duration - 60 minutes
Round difficulty - Medium
This round had only 1 question. The interviewer introduced himself. And he advised me to clearly understand the problem before proceeding.
You are given a binary tree of distinct integers, along with two nodes, ‘X’ and ‘Y’. Your task is to determine the Lowest Common Ancestor (LCA) of ‘X’ and ‘Y’.
The LC...
Find the Lowest Common Ancestor of two nodes in a binary tree.
Traverse the binary tree to find the paths from the root to nodes X and Y.
Compare the paths to find the last common node, which is the Lowest Common Ancestor.
Implement a recursive function to efficiently find the LCA.
Handle cases where one node is an ancestor of the other.
Consider edge cases like when X or Y is the root node.
Round duration - 60 minutes
Round difficulty - Medium
Pretty Good Round. Fast Paced. We covered a lot of ground.
Design and implement a class BSTIterator
to perform an in-order traversal over a Binary Search Tree (BST). Your implementation should include the following me...
Design and implement a class BSTIterator to perform in-order traversal over a Binary Search Tree (BST).
Implement a parameterized constructor to initialize the iterator with the root of the BST.
Implement a method 'next()' to return the next smallest element in in-order traversal.
Implement a method 'hasNext()' to check if there exists a next smallest element in traversal.
Ensure the output is the in-order traversal of the
Given a binary array 'ARR' of size 'N', your task is to determine the maximum length of a sequence consisting solely of 1’s that can be obtained by converting at...
Find the maximum length of a sequence of 1's by converting at most K zeroes into ones in a binary array.
Iterate through the array and keep track of the current window of 1's and zeroes.
Use a sliding window approach to find the maximum length of consecutive 1's by flipping at most K zeroes.
Update the window based on the number of zeroes flipped and keep track of the maximum length found so far.
Return the maximum length ...
You are given an undirected and disconnected graph G(V, E)
having V
vertices numbered from 0
to V-1
and E
edges. Your task is to print its BFS traversal starting from the 0t...
BFS traversal of an undirected and disconnected graph starting from vertex 0.
Start BFS traversal from vertex 0 and visit all connected nodes in sorted order.
Use a queue to keep track of nodes to visit next.
Keep a visited array to avoid revisiting nodes.
Print the BFS traversal path as the nodes are visited.
Example: For input V=5, E=4 and edges 0-1, 0-2, 1-3, 2-4, the BFS traversal will be [0, 1, 2, 3, 4].
Given an undirected graph with V
vertices (labeled 0, 1, ..., V-1) and E
edges, each edge connects two nodes X
and Y
with a specified weight representing the dis...
Dijkstra's algorithm is used to find the shortest path distance from a source node to all other nodes in an undirected graph.
Implement Dijkstra's algorithm to find the shortest path distance from node 0 to all other nodes in the graph.
Use a priority queue to efficiently select the next node with the shortest distance.
Initialize distances to all nodes as infinity, except for the source node which is 0.
Update distances t...
Round duration - 60 minutes
Round difficulty - Hard
Bar Raised Round. Definitely felt the difficulty.
You are given a string consisting of English alphabet characters. Your task is to identify and return the first character in the string that does not repeat...
Identify and return the first non-repeating character in a string, or the first character if all characters repeat.
Iterate through the string to count the frequency of each character
Iterate through the string again to find the first character with frequency 1
If no such character is found, return the first character of the string
Tip 1 : Practice at least 250 Questions, Give yourself enough time for preparation. Cramming won't take you very far. In books, I really liked Elements of Programming Interviews.
Tip 2 : Make sure to brush up your basics - coding style, OOPs, Language features. They help in making an impression.
Tip 3 : Don't worry about solving the question in the interview. Learn to tackle any random problem with the best of your ability. More often than not, that'd be enough.
Tip 1 : Keep your resume clean - no graphics, no multiple fonts. Keep it one page.
Tip 2 : Don't go over board in mentioning skills, only mention the things you are truly confident about.
I appeared for an interview before Sep 2020.
Round duration - 150 minutes
Round difficulty - Medium
We could attempt at any time out of the 3 given days.
The round was very time constrained and we could NOT go back to the question that we already attempted.
Given two sorted linked lists, your task is to merge them into a single sorted linked list. Return the head of the newly combined list.
The given linked lists may or ...
Merge two sorted linked lists into a single sorted linked list.
Create a dummy node to start the merged list
Compare nodes from both lists and add the smaller one to the merged list
Move the pointer of the merged list and the list with the smaller node
Handle cases where one list is exhausted before the other
Return the head of the merged list
Round duration - 60 minutes
Round difficulty - Hard
Evening at 5:00 pm. It was held on Amazon Chime app
Face cam was to be kept on COMPULSARILY. You could however not see the interviewer.
Codepen type environment was also used for typing my code which could be edited by the interviewer also.
(Shared document kind of)
Interviewer was very professional and was trying to push me towards getting the most optimal solution. Each and every answer was asked a counter question as to why I made that choice
You are provided with an array called ARR
, consisting of distinct positive integers. Your task is to identify all the numbers that fall within the range of the smallest a...
Identify missing numbers within the range of smallest and largest elements in an array.
Find the smallest and largest elements in the array.
Generate a list of numbers within the range of smallest and largest elements.
Remove the numbers that are present in the array to get the missing numbers.
Sort and return the missing numbers.
Given a Binary Search Tree (BST) and two integers, NODE1 and NODE2, determine the maximum element found in the path between NODE1 and NODE2.
...
Find the maximum element between two nodes in a Binary Search Tree (BST) path.
Traverse the BST to find the path between NODE1 and NODE2.
Keep track of the maximum element encountered in the path.
Return the maximum element found, or -1 if NODE1 or NODE2 are not in the BST or no elements exist between them.
Implement a program that performs basic string compression. When a character is consecutively repeated more than once, replace the consecutive duplicates with the coun...
Implement a program to compress a string by replacing consecutive duplicates with the count of repetitions.
Iterate through the string and keep track of consecutive characters and their counts.
Replace consecutive duplicates with the count of repetitions.
Ensure the count of repetitions is ≤ 9.
Return the compressed string.
Tip 1 : Be very very clear with your basics.
Tip 2 : Think well before giving an answer
Tip 3 : Practice, practice, practice DS Algo questions
Tip 1 : Limit it to 1 page ONLY.
Tip 2 : Be ready to face all kinds of questions on topics you have mentioned in the resume.
Some of the top questions asked at the Expedia Group Software Development Engineer II interview -
based on 5 interviews
1 Interview rounds
based on 16 reviews
Rating in categories
Software Development Engineer II
207
salaries
| ₹15.6 L/yr - ₹40 L/yr |
Software Development Engineer
95
salaries
| ₹12 L/yr - ₹36 L/yr |
Software Development Engineer 3
76
salaries
| ₹30 L/yr - ₹58 L/yr |
Software Engineer
60
salaries
| ₹12 L/yr - ₹36 L/yr |
Software Developer
51
salaries
| ₹10 L/yr - ₹35 L/yr |
Amazon
Flipkart
Udaan
BigBasket