Question: Algorithm The k smallest elements We wish to implement a data structure D that maintains the k smallest elements of an array A The data
Algorithm The k smallest elements
We wish to implement a data structure D that maintains the k smallest elements of an array A The data structure should allow the following procedures D INITIALIZE(A, n, k) that initializes D for a given array A of n elements. TRAVERSE(D), that returns the k smallest elements of A in sorted order. PS 4, Page 1 INSERT (D, r), that updates D when an element a is inserted in the array A. We can implement D using one of the following data structures: (i) an unsorted array of size k; (a) (4 points) For each of the choices (i)-(iii), show that the INITIALIZE procedure can be per- b) (3 points) For each of the choices (i)-(iii, compute the best running time for the TRAVERSE (c) (5 points) For each of the choices ()-(iii), compute the best running time for the INSERT (ii) a sorted array of size k; (iii) a max-heap of size k. formed in time O(n +klog) procedure you can think of. (In particular, tell your procedure.) procedure you can think of. (In particular, tell your procedure.)
Step by Step Solution
There are 3 Steps involved in it
To address the problem of maintaining the k smallest elements efficiently using different data structures lets go through each requested step a INITIA... View full answer
Get step-by-step solutions from verified subject matter experts
