nth_element 使用方法

Posted artoriax

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nth_element 使用方法相关的知识,希望对你有一定的参考价值。

找1-n数组的第k小(k从1开始编号)

nth_element(a + 1, a + k, a + n + 1);
printf("%d
", a[k]);

注意即使是1-n的数组,找第k小也是a+k而非a+k+1
如果是0-n-1的数组,找第k小为(k从0开始编号)

nth_element(a,a + k, a + n);
printf("%d
", a[k];

复杂度O(n),执行完毕后a[k]就是第k小的元素

以上是关于nth_element 使用方法的主要内容,如果未能解决你的问题,请参考以下文章

STL_算法_根据第n个元素排序(nth_element)

了解 nth_element

C++ nth_element 算法的有趣用例是啥?

nth_element 使用方法

STL中的nth_element()方法的使用

nth_element函数