Wouldn't a heap be ideal for this ?

On Mon, Jul 11, 2011 at 3:35 PM, John Reid <j.r...@mail.cryst.bbk.ac.uk>wrote:

> I have a procedure that generates N x M values sequentially. I want to
> store the N largest ones and discard the others. Obviously I can store all
> the values in a vector, sort it when it is full and then choose the top N
> values. Is there a more efficient way using a data structure that just
> stores the top N values as the procedure goes along? Typically M is 1,000
> and N is anywhere from 1,000 to 50,000. I have no prior expectation on how
> the N largest values are distributed amongst the N x M values.
>
> I'm working in C++ with the STL and boost libraries.
>
> Thanks for reading this,
> John.
>
> --
> 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+unsubscribe@**
> googlegroups.com <algogeeks%2bunsubscr...@googlegroups.com>.
> For more options, visit this group at http://groups.google.com/**
> group/algogeeks?hl=en <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.

Reply via email to