Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started

Binary Search and Efficiency

EasyPython00:00
Practice interviewer
In session
5 left
00:00

Your question is Binary Search and Efficiency. Start with the requirements on the right.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.

Problem

The Expedia app maintains a sorted list of unique property IDs for a search result page. Implement binary search to return the index of a target property ID, or -1 if the ID is not present.

Formal Specification

Implement search_property_ids(property_ids, target):

  1. property_ids is a sorted list of unique integers in ascending order.
  2. target is an integer property ID.
  3. Return the zero-based index of target when it exists.
  4. Return -1 when target is absent.

Your solution must use binary search rather than scanning every element. Explain why the search is efficient and state its time and space complexity.

Constraints

  • 0 <= len(property_ids) <= 100000
  • -10^9 <= property_ids[i], target <= 10^9
  • property_ids is sorted in strictly ascending order

Function Signature

def search_property_ids(property_ids, target):
Your solutionPython 3
You need to log in / sign up to run or submit.
Run your code to see test output