【发布时间】:2010-12-08 19:20:20
【问题描述】:
我需要对 std::vector 中的元素进行排序,但我只对正在排序的顶部 N 项目感兴趣,而不是整个列表:
例如在 10 个元素的列表中,只需对前 3 个元素进行排序。其他的就不用管了……
1,2,3,6,7,4,9,8,5
这可以使用std::sort 来完成吗?
编辑
我只需要在向量中找到顶部的N 项目。 std::partial_sort_copy 正是我所需要的。
【问题讨论】:
-
这是一个模糊的问题 - 您是否只想对前三个项目进行排序?还是让整个列表的三个最小元素在开头排序?
-
如果您的问题得到解答,请接受答案,而不是编辑问题以重复答案。