std::greater是用于执行比较的功能对象。它被定义为greater-than不等式比较的Function对象类。这可用于更改给定功能的功能。这也可以与各种标准算法一起使用,例如排序,优先级队列等。

头文件:

#include <functional.h>

模板类别:

template <class T> struct greater;

参数: T是要通过函数调用进行比较的参数类型。

返回值:它返回布尔变量,如下所示:


 

  • 真正:如果两个元素说(a&b)使得a> b。
  • 假:如果a <b。

用法:

对于顺序容器数组、vector等:

sort(arr.begin(), arr.end(), greater<int>()); 

对于关联式容器,如优先队列、堆,使用

priority_queue<int>  //默认降序队列,大顶堆
priority_queue<int,vector<int>,less<int>> //降序队列,大顶堆
priority_queue<int,vector<int>,greater<int>>  //升序队列,小顶堆

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐