std::experimental::ranges:: sort
|
template
<
RandomAccessIterator I, Sentinel
<
I
>
S,
class
Comp
=
ranges::
less
<>
,
class
Proj
=
ranges::
identity
>
|
(1) | (ranges TS) |
|
template
<
RandomAccessRange R,
class
Comp
=
ranges::
less
<>
,
class
Proj
=
ranges::
identity
>
|
(2) | (ranges TS) |
[
first
,
last
)
内的元素按升序排序。不保证保持相等元素的相对顺序。元素在应用投影
proj
后,使用
comp
进行比较。
尽管存在上述声明,算法声明的实际模板参数数量和顺序是未指定的。因此,若在调用算法时使用了显式模板参数,该程序很可能不具备可移植性。
目录 |
参数
| first, last | - | 要排序的元素范围 |
| r | - | 要排序的元素范围 |
| comp | - | 要使用的比较器 |
| proj | - | 应用于范围内元素的投影 |
返回值
指向范围末尾之后位置的迭代器(即对于重载
(1)
,它与
last
相等;对于重载
(2)
,它与
ranges::end(r)
相等)。
复杂度
O(N·log(N)) 次比较,其中 N 等于区间内的元素数量。
示例
|
本节内容不完整
原因:缺少示例 |
参见
|
将范围按升序排序
(函数模板) |