Velocity Reviews > C++ > what is the difference between partial_sort and n_th_element?

# what is the difference between partial_sort and n_th_element?

puzzlecracker
Guest
Posts: n/a

 10-12-2008
NOT SURE WHEN TO USE WHICH

Ian Collins
Guest
Posts: n/a

 10-12-2008
puzzlecracker wrote:
> NOT SURE WHEN TO USE WHICH

Which what?

--
Ian Collins

Guest
Posts: n/a

 10-12-2008
puzzlecracker wrote:
> NOT SURE WHEN TO USE WHICH

Using partial_sort will actually sort the first part of the sequence,
nth_element will not. It just separates the elements in "before" and
"after", but in no particular order.

PeterAPIIT@gmail.com
Guest
Posts: n/a

 10-13-2008
On Oct 12, 4:26*pm, "Bo Persson" <(E-Mail Removed)> wrote:
> puzzlecracker wrote:
> > NOT SURE WHEN TO USE WHICH

>
> Using partial_sort will actually sort the first part of the sequence,
> nth_element will not. It just separates the elements in "before" and
> "after", but in no particular order.
>

Can you explain with example ?

Zeppe
Guest
Posts: n/a

 10-13-2008
http://www.velocityreviews.com/forums/(E-Mail Removed) wrote:
> On Oct 12, 4:26 pm, "Bo Persson" <(E-Mail Removed)> wrote:
>> puzzlecracker wrote:
>>> NOT SURE WHEN TO USE WHICH

>> Using partial_sort will actually sort the first part of the sequence,
>> nth_element will not. It just separates the elements in "before" and
>> "after", but in no particular order.
>>

>
>
> Can you explain with example ?
>

sequence = [5 6 3 2 4 5 6 7];
|
nth

if I do partial_sort with n = 4, the elements 0,..,4 (before and
including position n) will be sorted, the 5,..,7 will not be
necessarily, that is, a possible outcome is:
[2 3 4 5 5 6 7 6]
|
nth

if I do nth_element, not even the elements strictly before position n
will be sorted, but they will be all less or equal to the nth. A
possible outcome is:
[2 4 5 3 5 6 7 6]
|
nth

If you have full-sort, every element is in its "sorted" position. If you
have partial sort, the first n elements will be in their sorted
position. If you have nth_element, only the nth element is in its sorted
position.

Best wishes,

Zeppe