Do just opposite thing to get result delete k elements from Max heap of element der u also get k largest numbers....
On Fri, Aug 14, 2009 at 3:25 PM, Arun N <arunn3...@gmail.com> wrote: > > This question was asked to me in Amazon interview > > 1)use hash table to store a word and its count > now the problem is reduced to find 'K' largest numbers(based on count) in > the hash table > > the optimal solution is to use minheap of size 'K' > > add first k elements in the minheap > now take the k+1 element > [as it is min heap the root will have minimum of all 'K' elements] > > while(k<n){ > > if( a[k+1] > root) > pop the root and add to heap and heapify > else if(a[k+1] < root) > go to k+2 element > } > > at the end the heap will have "K" elements which is the required answer > > time complexity O( n-K + nlogK ) > space complexity O(K) for heap > > as u get new words u can do the same check to add to heap or discard > > Arun, > > On Fri, Aug 14, 2009 at 12:53 PM, richa gupta <richa.cs...@gmail.com>wrote: > >> >> You have to develop a piece of code that can be attached to a program >> like Microsoft Word, which would list the last "N" words of the >> document in descending order of their occurence, and update the list >> as the user types. What code would you write? Using pseudo code is >> fine, just list the basic things you would consider >> >> -- >> Richa Gupta >> (IT-BHU,India) >> >> >> > > > -- > Potential is not what U have, its what U think U have!!! > It is better to worn out than rust. > > > > > -- Thanks & Regards Umesh kewat 09966796569 --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@googlegroups.com To unsubscribe from this group, send email to algogeeks+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/algogeeks -~----------~----~----~----~------~----~------~--~---