On Mon, May 9, 2011 at 11:44 AM, Ashish Goel <ashg...@gmail.com> wrote:

> Dave,
> w.r.t statement, After all integers are processed, compress out the unused
> hash table
> entries and find the Kth largest element,
>
>
> I could not understand the compress concept...are you saying something on
> counting sort philosophy?
> say the list is
>
> 5
> 4
> 4
> 3
> 3
> 3
> 2
> 2
> 2
> 2
> 1
> 1
> 1
> 1
> 1
>
> so the hash map will have
>
> 5,1 <5 is 1 time>
> 4,2,<4 is two time>
> 3,3,...
> 2,4,...
> 1,5...
>
> so if the question is to find say 3rd largest element based on frequency,
> it would be 4
>

3rd largest element based on frequency should be 3 i think?


> This essentially means that we probably need dynamic order statistics where
> the node contains the starting rank for a particular entry in the RBTree.
> Each RBTree node contains the number, its frequency and rank. then this
> becomes O(n) +O(lgn) i.e. O(n)
>
>
>
>
>
>
>
>
>
>
>
> Best Regards
> Ashish Goel
> "Think positive and find fuel in failure"
> +919985813081
> +919966006652
>
>
> On Sat, May 7, 2011 at 11:03 PM, Dave <dave_and_da...@juno.com> wrote:
>
>> @Gaurav: As I understand your solution, you are finding the K largest
>> integers based on value, rather than the K with the highest frequency
>> of occurrence.
>>
>> @Amit: Hash the integers into a hash table that includes a field for
>> the frequency count. When a new entry is made, set the frequency count
>> to 1. When an integer already is in the table, increment its count.
>> After all integers are processed, compress out the unused hash table
>> entries and find the Kth largest element. The overall algorithm can be
>> done in O(n).
>>
>> Dave
>>
>> On May 7, 12:06 pm, Gaurav Aggarwal <0007gau...@gmail.com> wrote:
>> > It can be done without sorting. Take the first element as pivot
>> > element. Calculate its position using Partition algorithm.
>> > If its new index is K, then on left side are top K  integers. If
>> index>K,
>> > apply algo on left side Else apply algo on right side.
>> >
>> > Best Case: O(1)
>> > Worst Case: O(n^2)
>> >
>> > But there are very less chances of worst case. It is when the list is
>> > already sorted.
>> >
>> >
>> >
>> >
>> >
>> > On Thu, May 5, 2011 at 1:06 AM, amit <amitjaspal...@gmail.com> wrote:
>> > > Hi ,
>> >
>> > > We are give a list of integers now our task is to find the top K
>> > > integers in the list based on frequency.
>> >
>> > > Apart from sorting the data can there be any other algorithm?
>> >
>> > > --
>> > > 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?hl=en.
>> >
>> > --
>> > Gaurav Aggarwal
>> > SCJP- Hide quoted text -
>> >
>> > - Show quoted text -
>>
>> --
>> 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?hl=en.
>>
>>
>  --
> 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?hl=en.
>



-- 
Aamir Khan
Indian Institute of Technology Roorkee,
Roorkee, Uttarakhand,
India , 247667
Phone: +91 9557647357
email:   aami...@iitr.ernet.in <aamir...@iitr.ernet.in>
            ak4u2...@gmail.com

-- 
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?hl=en.

Reply via email to