【算法优化】比较器的使用
来源:互联网 发布:盲僧李小龙皮肤淘宝 编辑:程序博客网 时间:2024/06/01 22:18
系统的sort函数默认排序是从小到大的,可以通过修改比较器的方法获得新的排序方式。
说明
在algorithm头文件中,定义的sort函数,第三个参数是一个比较器,默认是直接用系统的,升序排列。当然可以自定义。
bool mycompare1(int a, int b){//降序 return a - b > 0;}
这样在使用的时候,sort(a.begin(), a.end(), &mycompare1);
即可。
这里在写的时候遇到一个问题,应该是VS的问题。
bool mycompare1(int a, int b){//降序 return a - b >= 0;}
如果写的是a-b>=0,则会出现invalid operator >的错误。百度了一下,这篇博客给出了解释,即这是一个严格排序,如果a==b,返回的应该是FALSE,所以不要添加等于号。
这里官方给出说明。
代码
#include <iostream>#include <algorithm>#include <vector>using namespace std;/*2017/11/12比较器的使用*/bool mycompare1(int a, int b){//降序 return a - b > 0;}bool mycompare2(int a, int b){//升序 return b - a > 0;}#if 1void main(){ vector<int>a = { 1, 1, 6, 4, 5, 7, 2, 14, 6, 14 }; sort(a.begin(), a.end(), &mycompare2); for (int i = 0; i < a.size(); i++) cout << a[i] << " "; cout << endl; system("pause");}#else#endif
阅读全文
0 0
- 【算法优化】比较器的使用
- 优化算法的比较,选择
- 比较常用的算法优化小技巧
- 主要排序算法的比较及其优化
- 优化算法比较
- tensorflow的优化器比较
- 判断质数的优化算法,比较详细解释
- 深度学习中常见的优化算法比较
- 比较器的使用
- 使用森林优化算法的特征选择
- 对主流的图像分割算法进行比较,并对其部分算法进行优化
- 传统优化算法与遗传算法之间的优缺点和特点比较
- 卷积神经网络中的优化算法比较
- 卷积神经网络中的优化算法比较
- 优化器的使用
- 使用Python的MD5算法比较两个文件
- 文档的相似性可以使用Shingling算法进行比较
- java 比较器的使用
- web下载文件和跳转
- 交换机和路由器的区别
- 超详细理解:kmp算法next数组求解过程和回溯的含义
- 分布式系统设计原则
- SRE|当Google的核心准则遇到Xero的最佳实践
- 【算法优化】比较器的使用
- 1123. Is It a Complete AVL Tree (30)
- git切换远程库 创建分支并提交到远程
- 抽象类和接口
- redis的分布式解决方式--codis (转)
- Java读取文件夹下的文件并进行处理
- Java 中使用 Redis
- js解析Excel文件,解析后的数据用Echarts折线图展示
- GIT command usage