Coding & DSA · Free · No account needed
Uber coding & dsa interview questions
5 sample questions — 2 specific to Uber plus the coding & dsa questions asked everywhere — each with a short answer and what interviewers listen for. Data structures, algorithms, and the coding-round habits interviewers score: clarifying, complexity, edge cases, and clean code.
Sample questions with short answers
Tap a question to reveal the short answer and key points.
1Given driver locations, find the K nearest drivers to a rider.MediumUber-specificShow short answer
Short answer
Compute distances and keep a max-heap of size K, giving O(n log K). In practice drivers are bucketed by geohash or H3 cell so you only scan nearby cells, then sort the small candidate set. Mention Haversine vs planar approximation and how to handle ties and moving drivers.
Interviewers listen for
- max-heap of size K
- geohash or H3 bucketing to limit candidates
- Haversine vs planar approximation
2Merge overlapping time intervals (driver shifts).MediumUber-specificShow short answer
Short answer
Sort intervals by start, then sweep: if the current interval starts before the last merged one ends, extend the end; otherwise push a new interval. O(n log n) due to the sort. Clarify whether touching intervals count as overlapping and handle empty input.
Interviewers listen for
- sort by start
- single sweep extending the end
- O(n log n) and touching intervals edge case
3Given an array of integers and a target, return the indices of the two numbers that add up to the target. How would you approach it and what is the complexity?EasyAsked everywhereShow short answer
Short answer
Walk the array once keeping a hash map of value → index. For each element check whether target − value is already in the map; if so return both indices. This is O(n) time and O(n) space, versus the O(n²) brute-force double loop. Clarify whether exactly one solution exists and whether the same element can be reused.
Interviewers listen for
- hash map of value to index
- walk the array once, O(n) time
- clarify duplicates and reuse of an element
4How do you detect a cycle in a linked list without using extra memory?MediumAsked everywhereShow short answer
Short answer
Use Floyd's tortoise-and-hare: advance a slow pointer by one node and a fast pointer by two. If the fast pointer reaches null there is no cycle; if the pointers ever meet there is one. It runs in O(n) time with O(1) extra space. To find the cycle's start, reset one pointer to the head and move both one step at a time until they meet again.
Interviewers listen for
- slow and fast pointers
- O(1) extra space
- pointers meeting proves a cycle
5Explain the difference between BFS and DFS and when you would choose each.MediumAsked everywhereShow short answer
Short answer
BFS explores level by level using a queue, so it finds the shortest path in an unweighted graph and suits 'fewest steps' problems. DFS goes deep first using a stack or recursion, uses less memory on wide graphs, and suits connectivity, cycle detection, topological sort and backtracking. Both are O(V + E); pick by what the problem asks for and the graph's shape.
Interviewers listen for
- BFS uses a queue and finds shortest paths
- DFS uses a stack or recursion
- both O(V + E)
Now practise out loud
Reading answers is step one. Saying them under pressure is what gets you through the loop.
Free · no account
Practise on Uber coding & dsa with the AI mock interview
Answer these questions one at a time and get instant feedback on coverage, structure and depth — as many times as you like.
Start AI mock interview60-minute · ₹499
Book a mock interview with a human mentor
A senior engineer or PM who has cleared these loops runs a realistic session on Google Meet and gives you personalised feedback.
Keep going
Other Uber rounds
Mentors for a Uber coding & dsa mock
All sessions are 60 minutes via Google Meet
- ⚡ Built scalable systems across Big Tech and high-performance trading firms.
- 🎯 Conducting interview-focused sessions on DSA, System Design, Backend Engineering, and Software Architecture.
- 💡 Helping engineers think like top interview performers, not just solve problems.
- 🚀 Passionate about building impactful software and helping engineers navigate competitive product company interviews.
- 🎯 Focused on coding rounds, problem-solving, system design fundamentals, and interview communication.
- 💡 Learn how top engineers approach problems under real interview pressure.
- 🏆 Experienced across some of the world's leading product companies, building large-scale software and customer-facing products.
- 🎯 Expert in Full Stack Development, Machine Coding, JavaScript, React & System Design.
- 💡 Master the skills top companies actually evaluate during interviews