Paste
Copy
Cut
Options

This problem has been solved!

You'll get a detailed solution from a subject matter expert that helps you learn core concepts.

See Answer
  • Question: You are interested in analyzing some hard-to-obtain data from two separate databases. Each database contains n numerical values – so there are 2n values total – and you may assume that no two values are the same. You’d like to determine the median of this set of 2n values, which we will define here to be the n th smallest value. However, the only way you can

    You are interested in analyzing some hard-to-obtain data from two separate databases. Each database contains n numerical values – so there are 2n values total – and you may assume that no two values are the same. You’d like to determine the median of this set of 2n values, which we will define here to be the n th smallest value. However, the only way you can access these values is through queries to the databases. In a single query, you can specify a value k to one of the two databases, and the chosen database will return the k th smallest value it contains. Since queries are expensive, you’d like to compute the median using as few queries as possible. Give an algorithm that finds the median value using at most O(log n) queries.

    Give a sketch of the algorithm with an explanation and show the running time complexity O(log n) by building a recurrence relation. We can consider the two data sets (or databases) virtually sorted through queries for finding the kth smallest data item, so let’s denote the kth smallest data item of each database as A[k] and B[k] where A and B denote the two databases of size n each. Hint: the size of each data set (or database) can be reduced to half at each recursion.

  • Chegg Logo
    There are 2 steps to solve this one.
    Solution
    Step 1

    To find the median of the combined set of 2n values using at most O(log n) queries, you can employ a...

    View the full answer
    answer image blur
    Step 2
    Unlock
    Answer
    Unlock