Filter interviews by
Closure is a function that captures the environment in which it was created, allowing it to access variables from that environment even after the function has finished executing.
Closure allows a function to access variables from its outer scope even after the function has finished executing.
It is created when a function is defined within another function and the inner function references variables from the outer functi...
One coding and other mcqs on CS concepts
I appeared for an interview in May 2021.
Round duration - 60 minutes
Round difficulty - Medium
This was coding round and was conducted on Google meet with code link shared. Their were 2 interviewers that gave questions and later ran code on sample test cases.
Given a string STR
consisting of lowercase English letters, your task is to return all permutations of the given string in lexicographically increasing order.
Return all permutations of a given string in lexicographically increasing order.
Use backtracking to generate all permutations of the string.
Sort the permutations to get them in lexicographically increasing order.
Ensure the string contains unique characters to avoid duplicate permutations.
Given a non-negative integer 'K', determine the Kth row of Pascal’s Triangle.
K = 2
1 1
K = 4
1 4 6 ...
The task is to find the Kth row of Pascal's Triangle given a non-negative integer K.
Create an array to store the elements of the Kth row of Pascal's Triangle.
Use the formula C(n, k) = C(n-1, k-1) + C(n-1, k) to calculate each element in the row.
Return the array containing the Kth row of Pascal's Triangle.
Round duration - 90 minutes
Round difficulty - Medium
This was a Machine Coding Round/LLD round followed by HLD round which was taken by Video Conferencing and Screen Sharing.
Round duration - 60 minutes
Round difficulty - Easy
This was the last round. This was HM round followed by the HR round.
Tip 1 : Solve previously asked questions. It tells you about the level of questions that the company asks. Check glass-door reviews it will help you to know what kind of questions company ask
Tip 2 : Be real during the interview and don’t show off.
Tip 3 : Prepare for theory subjects like Object-Oriented Programming System, Database Management System, Computer networks, etc.
Tip 1 : Keep your resume simple with all work experience mentioned.
Tip 2 : Any unwanted information on the resume leaves a bad impact on the interviewer.
Tip 3 : You should be prepared to explain anything that’s written on your resume.
Tip 4 : Keep it of 1 page or 2 pages only
I appeared for an interview before May 2021.
Round duration - 90 minutes
Round difficulty - Medium
It was in the morning, where there were 3 questions to answer.
You are provided with a 2-dimensional matrix having N
rows and M
columns, containing only 1s (land) and 0s (water). Your goal is to determine the number of islands in t...
Count the number of islands in a 2D matrix of 1s and 0s.
Use Depth First Search (DFS) or Breadth First Search (BFS) to traverse the matrix and identify connected groups of 1s.
Maintain a visited array to keep track of visited cells to avoid redundant traversal.
Increment the island count each time a new island is encountered.
Consider all eight possible directions for connectivity while traversing the matrix.
Handle edge ca...
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 this range.
Filter out the numbers present in the array.
Return the missing numbers in sorted order.
Given a binary tree, your task is to count and return the number of leaf nodes present in it.
A binary tree is a data structure where each node has at most two children,...
Count and return the number of leaf nodes in a binary tree.
Traverse the binary tree and count nodes with both left and right children as NULL.
Use recursion to traverse the tree efficiently.
Leaf nodes have no children, so check for NULL left and right children to identify them.
Round duration - 20 minutes
Round difficulty - Medium
It was a system design round.
OLA app system design involves multiple components like user interface, driver matching algorithm, payment processing, etc.
User interface for booking rides and tracking
Driver matching algorithm based on location and availability
Payment processing for seamless transactions
Real-time tracking of rides for both users and drivers
Round duration - 45 minutes
Round difficulty - Medium
It was a DS Algo round.
Given a binary tree, your task is to determine the diagonal traversal of the tree.
1 2 3 4 -1 5 6 -1 7 -1 -1 -1 -1 -1 -1
...
Diagonal traversal of a binary tree involves traversing nodes diagonally from top to bottom and left to right.
Traverse the tree level by level, starting from the root node.
For each level, keep track of the diagonal nodes and their children.
Use a queue to store nodes at each level and traverse them accordingly.
Example: For input 1 2 3 4 -1 5 6 -1 7 -1 -1 -1 -1 -1 -1, the diagonal traversal is 1 3 6 2 5 4 7.
You are required to determine the minimum number of taps that need to be opened to water an entire one-dimensional garden defined along the x-axis,...
Find the minimum number of taps to water an entire garden along the x-axis.
Iterate over the taps and find the farthest point each tap can reach.
Sort the taps based on their starting points and use a greedy approach to select the taps.
Keep track of the farthest point reachable by the selected taps and the number of taps opened.
Return the minimum number of taps needed to water the entire garden or -1 if it's impossible.
Round duration - 15 minutes
Round difficulty - Medium
HR Round
Tip 1 : Go through standard problems
Tip 2 : You should know about everything you have written on your resume
Tip 1 : Keep it short not more than 1 page.
Tip 2 : Write more about figures and technicality on your resume.
Ola Cabs interview questions for designations
I appeared for an interview before Sep 2020.
Round duration - 45 minutes
Round difficulty - Easy
This round was telephonic round. The interview lasted for approximately 45 minutes. The interviewer asked me three coding questions. I hustled a bit on 3rd question but after a hint was able to solve it.
Round duration - 120 minutes
Round difficulty - Easy
This round was Online Test on Hackerrank for 120 minutes, it contained 3 questions.
Design a data structure for a Least Recently Used (LRU) cache that supports the following operations:
1. get(key)
- Return the value of the key if it exists in the cache; otherw...
Design a Least Recently Used (LRU) cache data structure that supports get and put operations with capacity constraint.
Use a combination of hashmap and doubly linked list to implement the LRU cache.
Keep track of the least recently used item and evict it when the cache reaches its capacity.
Update the position of an item in the cache whenever it is accessed or updated.
Handle both get and put operations efficiently to main...
Round duration - 60 minutes
Round difficulty - Easy
This round was face to face Interview at Ola Campus and lasted for 1 hour.
Round duration - 35 minutes
Round difficulty - Easy
This round was again a face to face technical interview, I was just asked one question in this round.
Round duration - 30 minutes
Round difficulty - Easy
Only a question of System Design was asked
Design a toll booth system for Ola cabs with necessary functions and data structures.
Use a queue data structure to manage the order of vehicles waiting at the toll booth.
Implement functions for vehicle entry, toll calculation, and exit.
Store vehicle information such as license plate number, type of vehicle, and toll amount in a hash map.
Utilize a priority queue to handle VIP or premium customers efficiently.
Include a f...
Round duration - 30 minutes
Round difficulty - Easy
Very general HR questions were asked
Tip 1 : Be confident in the projects you have mentioned in your resume.
Tip 2 : Always discuss your approach with the interviewer first for any problem.
Tip 3 : Always start with a basic solution and then discuss further optimisations.
Tip 1 : Good projects showing your skills (Be clear in what you achieved from those projects)
Tip 2 : Internship experience at the top (It gives you an edge over others)
Get interview-ready with Top Ola Cabs Interview Questions
I appeared for an interview before Jan 2021.
Round duration - 60 Minutes
Round difficulty - Medium
This was a typical DS/Algo where I was asked to solve two questions related to Binary Trees and write the pseudo code for both of them followed by some theoretical questions related to Operating Systems.
Given a binary search tree (BST) consisting of integers and containing 'N' nodes, your task is to find and return the K-th largest element in this BST.
If there is no K-th la...
Find the K-th largest element in a BST.
Perform reverse in-order traversal of the BST to find the K-th largest element.
Keep track of the count of visited nodes to determine the K-th largest element.
Return -1 if there is no K-th largest element in the BST.
Determine if the given binary tree is height-balanced. A tree is considered height-balanced when:
Determine if a given binary tree is height-balanced by checking if left and right subtrees are balanced and their height difference is at most 1.
Check if the left subtree is balanced
Check if the right subtree is balanced
Calculate the height difference between the left and right subtrees
Return 'True' if all conditions are met, otherwise return 'False'
Zombie process is a terminated process that has completed execution but still has an entry in the process table. Orphan process is a process whose parent process has terminated.
Zombie process is created when a child process completes execution but its parent process has not yet read its exit status.
Zombie processes consume system resources and should be cleaned up by the parent process using wait() system call.
Orphan p...
Round duration - 60 Minutes
Round difficulty - Medium
This was also a Data Structures and Algorithm round where I was asked to solve 3 medium to hard level problems along with their pseudo code within 60 minutes .
Given a string S
of length L
, determine the length of the longest substring that contains no repeating characters.
"abac...
Find the length of the longest substring without repeating characters in a given string.
Use a sliding window approach to keep track of the longest substring without repeating characters.
Use a hashmap to store the index of each character in the string.
Update the start index of the window when a repeating character is found.
Calculate the maximum length of the window as you iterate through the string.
Return the maximum le
Given a sorted array that has been rotated clockwise by an unknown amount, you need to answer Q
queries. Each query is represented by an integer Q[i]
, and you must ...
Search for integers in a rotated sorted array efficiently.
Use binary search to efficiently search for integers in the rotated sorted array.
Handle the rotation of the array while performing binary search.
Return the index of the integer if found, else return -1.
Given an array ARR
and an integer K
, your task is to count all subarrays whose sum is divisible by the given integer K
.
The first line of input contains an...
Count subarrays with sum divisible by K in an array.
Iterate through the array and keep track of the prefix sum modulo K.
Use a hashmap to store the frequency of each prefix sum modulo K.
For each prefix sum, increment the count by the frequency of (prefix sum - K) modulo K.
Handle the case when prefix sum itself is divisible by K.
Return the total count of subarrays with sum divisible by K.
Round duration - 50 Minutes
Round difficulty - Medium
In this round , I was asked to code a simple question related to BST . After that I was asked the internal implementation of a Hash Map where I was supposed to design a Hash Map using any of the Hashing Algorithms that I know . This was preety challenging for me but I got to learn so much from it.
Given a Binary Search Tree (BST) and an integer, write a function to return the ceil value of a particular key in the BST.
The ceil of an integer is defined as the s...
Ceil value of a key in a Binary Search Tree (BST) is found by returning the smallest integer greater than or equal to the given number.
Traverse the BST to find the closest value greater than or equal to the key.
Compare the key with the current node value and update the ceil value accordingly.
Recursively move to the left or right subtree based on the comparison.
Return the ceil value once the traversal is complete.
Create a data structure that maintains mappings between keys and values, supporting the following operations in constant time:
1. INSERT(key, value): Add or update t...
Design a constant time data structure to maintain mappings between keys and values with various operations.
Use a hash table to achieve constant time complexity for INSERT, DELETE, SEARCH, and GET operations.
Keep track of the number of key-value pairs for GET_SIZE operation.
Check if the hash table is empty for IS_EMPTY operation.
Return true or false for SEARCH operation based on key existence.
Return the value associated...
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 Jan 2021.
Round duration - 90 Minutes
Round difficulty - Hard
I found the online coding round of Flipkart to be quite difficult based on the constraints of the problem and their time limits. I coded the first problem quite easily but on the second and the third problem , my code could only pass a few test cases and gave TLE for most of them. Both the questions required very efficient solution and the last 5 to 10 Test Cases carried more weight than the rest so I didn't get through this round.
Given three non-negative integers N, M, and K, compute the Kth digit from the right in the number obtained from N raised to the power M (i.e., N ^ M).
The first line contains ...
The task is to find the Kth digit from the right in the number obtained from N raised to the power M.
Iterate through the digits of N^M from right to left
Keep track of the position of the current digit
Return the digit at position K from the right
Compute the skyline of given rectangular buildings in a 2D city, eliminating hidden lines and forming the outer contour of the silhouette when viewed from a distance. Each building is ...
Compute the skyline of given rectangular buildings in a 2D city, eliminating hidden lines and forming the outer contour of the silhouette.
Iterate through the buildings and create a list of critical points (x, y) where the height changes.
Sort the critical points based on x-coordinate and process them to form the skyline.
Merge consecutive horizontal segments of equal height into one to ensure no duplicates.
Return the fin...
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
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 want you to provide me with challenging software development projects that will help me grow as a developer.
Challenging projects that will push my skills to the limit
Opportunities to learn new technologies and programming languages
Collaborative work environment with experienced developers
Clear communication and feedback on my work
Opportunities for career growth and advancement
Find Nth largest element in the BST
Traverse the BST in reverse inorder and keep track of count
If count equals N, return the current node's value
If count exceeds N, stop traversing and return null
If count is less than N, continue traversing
Find node in BST with value equal to or greater than input value.
Start at root node
If input value is less than current node value, move to left child
If input value is greater than or equal to current node value, move to right child
Repeat until node with desired value is found or null is reached
Program to check if a binary tree is balanced
Calculate height of left and right subtrees recursively
Check if the difference in height is not more than 1
Repeat for all nodes in the tree
Time complexity: O(nlogn) or O(n)
Space complexity: O(h) where h is the height of the tree
Find max size of a sub-string with no duplicate characters in a given string.
Use a sliding window approach with two pointers.
Maintain a hash set to keep track of unique characters.
Update the maximum length of the substring as you iterate through the string.
A hash table is a data structure that stores key-value pairs and uses a hash function to map keys to buckets.
Hash function takes a key and returns an index to a bucket
Collisions occur when multiple keys map to the same bucket
Collision resolution techniques include chaining and open addressing
Example: Dictionary in Python uses hash tables to store key-value pairs
WAP to find a continuous subset divisible by 7 from an array of numbers. Calculate algorithm complexity.
Iterate through the array and calculate the prefix sum modulo 7 at each index.
Store the prefix sum modulo 7 in a hash table with the index as the value.
If a prefix sum modulo 7 is already in the hash table, the subarray between the two indices has a sum divisible by 7.
Time complexity is O(n) and space complexity is O
Given a 2D array of integers, set rows and columns to 1 if they contain 1.
Iterate through the array to find the index of 1
Use two arrays to keep track of rows and columns with 1
Iterate through the rows and columns arrays to set values to 1
Code to find sum of two numbers stored as linked list.
Traverse both lists simultaneously and add corresponding nodes
Keep track of carry and add it to next sum
Create a new node for each sum and move to next node
Code to print elements on path from root to leaf node with max sum
Traverse the tree and keep track of the maximum sum path
Use recursion to traverse the tree
Print the path when a leaf node with maximum sum is reached
Retrieving min element from a max heap has a time complexity of O(log n).
The min element is always the leftmost leaf node in the last level of the heap.
To retrieve it, swap it with the last element in the heap and remove it.
Then, bubble down the new root to maintain the max heap property.
Examples: retrieving the smallest number in a priority queue implemented as a max heap.
Examples: retrieving the smallest element in a
The fastest method to sort an almost sorted array is shell sort.
Shell sort has a time complexity of O(n log n) which is faster than bubble sort and insertion sort.
Quick sort and merge sort have a time complexity of O(n log n) but they are not optimized for almost sorted arrays.
Shell sort works by comparing elements that are far apart first and then gradually reducing the gap between them.
Example: If the array is [1, 3,...
A zombie process is a process that has completed execution but still has an entry in the process table.
Zombie processes occur when a parent process does not properly wait for its child process to terminate.
The zombie process remains in the process table until the parent process reads its exit status.
Zombie processes do not consume system resources but can accumulate if not properly handled.
They can be identified using ...
Hash tables have complexities related to collisions, resizing, and choosing a good hash function.
Collisions occur when two keys map to the same index, requiring a collision resolution strategy.
Resizing can be expensive as all elements need to be rehashed and moved to new locations.
Choosing a good hash function is important to minimize collisions and ensure even distribution of keys.
Examples of collision resolution stra...
Algorithm to find any three numbers in an array that sum to zero.
Sort the array in ascending order.
Loop through the array and fix the first number.
Use two pointers to find the other two numbers that sum to the negative of the fixed number.
If found, return the three numbers.
If not found, move to the next number and repeat the process.
Time complexity: O(n^2)
Returning kth smallest element in a BST with time complexity logn.
Perform in-order traversal and keep track of count until kth element is reached
If kth element is found, return it
If kth element is not found, continue traversal
If traversal is complete and kth element is not found, return null
Time complexity is logn as we only traverse the height of the tree
based on 5 interviews
Interview experience
based on 12 reviews
Rating in categories
Driver
744
salaries
| ₹1 L/yr - ₹6 L/yr |
CAR Driver
497
salaries
| ₹1 L/yr - ₹6 L/yr |
Business Development Executive
241
salaries
| ₹1.8 L/yr - ₹5 L/yr |
Assistant Manager
235
salaries
| ₹4.2 L/yr - ₹17.5 L/yr |
Senior Executive
221
salaries
| ₹2 L/yr - ₹7.5 L/yr |
Uber
Meru cabs
Flipkart
Udaan