std::sort_heap

来自cppreference.com
< cpp‎ | algorithm

 
 
算法库

|- class="t-nv-h1"

| colspan="5" |
功能
原文:
Functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

|-

| |- |

修改序列操作
原文:
Non-modifying sequence operations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
all_of
any_of
none_of
(C++11)
(C++11)
(C++11)
for_each
count
count_if
mismatch
equal

|

|-

修改序列操作
原文:
Modifying sequence operations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

| |- |

|

|-

分区操作
原文:
Partitioning operations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

| |- |

is_partitioned(C++11)
partition
partition_copy(C++11)

|

|-

排序操作(排序的区间)
原文:
Sorting operations (on sorted ranges)
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

| |- |

is_sorted(C++11)
is_sorted_until(C++11)
sort

|

|-

二进制搜索操作(排序的区间)
原文:
Binary search operations (on sorted ranges)
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

| |- |

|

|-

设置操作(排序的区间)
原文:
Set operations (on sorted ranges)
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

| |- |

|

|-

堆的操作
原文:
Heap operations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

| |- |

|

push_heap
pop_heap
sort_heap

|-

最小/最大操作
原文:
Minimum/maximum operations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

| |- |

|

|-

数字操作
原文:
Numeric operations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

| |- |

|

|-

C库
原文:
C library
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

| |- |

|

|-

 
在头文件 <algorithm> 中定义
template< class RandomIt >
void sort_heap( RandomIt first, RandomIt last );
(1)
template< class RandomIt, class Compare >
void sort_heap( RandomIt first, RandomIt last, Compare comp );
(2)
[first, last)中的元素进行排序,按升序排列。 operator<的第一个版本的功能使用比较的元素,第二个使用给定的比较函数comp.
原文:
Sorts the elements in the heap [first, last) in ascending order. The first version of the function uses operator< to compare the elements, the second uses the given comparison function comp.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

目录

[编辑] 参数

first, last -
范围内的元素进行排序
原文:
the range of elements to sort
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
comp - comparison function which returns ​true if the first argument is less than the second.

The signature of the comparison function should be equivalent to the following:

 bool cmp(const Type1 &a, const Type2 &b);

The signature does not need to have const &, but the function must not modify the objects passed to it.
类型 Type1Type2 必须能使类型 RandomIt 的对象能够 be dereferenced and then 隐式转换 to both of them。 ​

类型要求
-
RandomIt 必须满足 ValueSwappableRandomAccessIterator 的要求。
-
The type of dereferenced RandomIt must meet the requirements of MoveAssignable and MoveConstructible.

[编辑] 返回值

(无)
原文:
(none)
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 复杂度

在“N×日志(N)”比较N=std::distance(first, last).
原文:
At most N×log(N) comparisons where N=std::distance(first, last).
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 注释

A“堆”是一个范围的元素[f,l)具有以下属性:
原文:
A heap is a range of elements [f,l) that has the following properties:
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
  • *f范围中的最大元素
    原文:
    *f is the largest element in the range
    这段文字是通过 Google Translate 自动翻译生成的。
    您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
  • 可以添加一个新的元素,使用std::push_heap()
    原文:
    a new element can be added using std::push_heap()
    这段文字是通过 Google Translate 自动翻译生成的。
    您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
  • 使用std::pop_heap()的第一个元素可以被删除
    原文:
    the first element can be removed using std::pop_heap()
    这段文字是通过 Google Translate 自动翻译生成的。
    您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
实际配置是实现定义的元素.
原文:
The actual arrangement of the elements is implementation defined.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 示例

[编辑] 另请参阅

根据区间内的元素创建出一个堆
(函数模板) [edit]