当前位置: 首页 > news >正文

【C++】sort函数的两种用法

一、引入

std::sort 是 C++ 标准库中的排序算法函数,通常用于对容器中的元素进行排序。它是 C++ 中常用的算法之一,广泛应用于各种实际开发场景中。通过学习 std::sort,你将掌握如何高效地对容器进行排序,以及如何通过自定义比较规则实现不同的排序需求。

二、std::sort 基本用法

函数声明

std::sort(iterator first, iterator last);
  • firstlast 是容器的起始迭代器和结束迭代器,表示排序的区间。
  • 默认情况下,std::sort升序对容器进行排序(即使用 operator< 比较元素)。

三、自定义排序规则:sort函数两种用法

std::sort 可以接受一个第三个参数,指定自定义的比较函数或函数对象(仿函数)。通过自定义比较函数,你可以对容器元素进行不同的排序。

方法一:函数法

bool cmp(int a, int b) {
    return a > b;
}
std::sort(nums.begin(), nums.end(), cmp);

方法二:Lambda函数法 (推荐)

std::sort(nums.begin(), nums.end(), [](int a, int b) {return a > b; });

注意,  [](int a, int b) {return a > b; }这一部分为sort函数的第三个参数,这么写时方便初学者理解,一般都这么排版:

std::sort(nums.begin(), nums.end(), [](int a, int b) {
    return a > b; // 降序排序
});

如果看不懂Lambda函数,可以参考这篇文章:【C++基础】Lambda 函数 基础知识讲解学习及难点解析-CSDN博客

相关文章:

  • 响应式网站好不好怎么自己建立网站
  • 做设计一般用的素材网站是什么中央常委成员名单
  • 中英双语网站源码竞价广告是怎么推广的
  • 网站建设阶段性工作重点郑州seo网络推广
  • wordpress插件和模板北京关键词优化服务
  • 可以做片头的网站免费网站分析seo报告是坑吗
  • 分布式容器技术是什么
  • 解决python配置文件类configparser.ConfigParser,插入、读取数据,自动转为小写的问题
  • AGI成立的条件
  • 算法及数据结构系列 - 回溯算法
  • 嵌入式芯片与系统设计竞赛,值得参加吗?如何选题?需要学什么?怎么准备?
  • QT开发(4)--各种方式实现HelloWorld
  • centos 7 搭建FTP user-list用户列表
  • LeetCode算法题(Go语言实现)_07
  • ensp 公司组网拓扑图
  • 如何给商品一键换色?图生生AI,告别繁琐修图
  • html5炫酷3D立体文字效果实现详解
  • 基于PySide6的CATIA自动化工具开发实战——空几何体批量清理系统
  • GITLAB部署安装教程
  • Kubernetes Init 容器:实现 Nginx 和 PHP 对 MySQL 的依赖检查
  • 9-类、结构体、指针、引用
  • 挖矿病毒应急响应处置手册
  • 嵌入式Linux——Framebuffer应用编程
  • Milvus学习整理
  • 我在windows上创建一个空文件,这个文件在哪里存着?这个文件要不要占据磁盘空间大小?
  • JVM常见面试总结