Question: s A person is considering choosing multiple Apps from n candidates to provide a set of m functions. For each function, out of n candidates,

s A person is considering choosing multiple Apps from n candidates to provide a set of m functions. For each function, out of n candidates, exactly 2 Apps are offering this function. Each App provides a set of functions, and the number of functions varies from one App to another. An App pi may offer a set of fi functions, and the value of fi is between 1 and m. The goal is to select the minimum number of Apps to offer all m functions for each function, there is at least 1 chosen App that provides this function.a. Use 2-3 sentences to describe the overall idea of this algorithm. b. Present your algorithm in pseudo code format, with necessary notations and enough details (similar to those algorithms presented in the textbook). c. For optimization problem that requires to minimize or maximize an objective, specify whether this algorithm is optimal or approximation algorithm. For approximation algorithm, specify its approximation guarantee: a quantity of the guarantee that how close the solution produced by this algorithm is to the optimum. d. Construct a small (5<= n <=10) problem instance (you may use the given example if provided) to illustrate how your algorithm works and show the steps and the final solution too. e. Analyze the time complexity of your algorithm, present the lowest upper bound of the running time as a function on input size n in big-O notation. For example, the time complexity of MergeSort is O(nlogn). f. Demonstrate/explain the correctness of your algorithm if your algorithm is a greedy algorithm

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!