库函数sort

1 sort自定义大小cmp

bool cmp(Rec a,Rec b)//W1a是否应该排在b前面

{

return a.x<b.x;//a小于b就排在前面

// return a>b;

}只需在这里改变大于还是小于排序

javascript 复制代码
#include <iostream>
#include <algorithm>
#include <vector>
#include <ctime>
using namespace std;

struct Rec
{
    int x,y;
    //W2重载小于号
}a[5];
// 定义了一个结构体类型 Rec,它包含两个整数成员 x 和 y,然后创建了一个包含五个这种结构体类型的数组 a。
// 这意味着你可以使用 a 数组来存储和操作五个 Rec 类型的结构体对象。

bool cmp(Rec a,Rec b)//W1a是否应该排在b前面
{
    return a.x<b.x;//a小于b就排在前面
    // return a>b;
}
int main()
{
for(int i=0;i<5;i++)
{
    a[i].x=-i;
    a[i].y=i;
}
for(int i=0;i<5;i++)printf("(%d,%d)",a[i].x,a[i].y);
cout<<endl;
sort(a,a+5,cmp);
for(int i=0;i<5;i++)printf("(%d,%d)",a[i].x,a[i].y);
cout<<endl;
}

2不用cmp函数

改一下

struct Rec

{

int x,y;

bool operator<(const Rec &t)const//W2重载小于号

{

return x<t.x;

}

}a[5];

并且不用cmp了

sort(a,a+5);

打印效果如上一样

相关推荐
傍晚冰川7 分钟前
FreeRTOS任务调度过程vTaskStartScheduler()&任务设计和划分
开发语言·笔记·stm32·单片机·嵌入式硬件·学习
PingdiGuo_guo9 分钟前
C++智能指针的知识!
开发语言·c++
黄雪超9 分钟前
JVM——打开JVM后门的钥匙:反射机制
java·开发语言·jvm
Chuncheng's blog12 分钟前
CentOS 7如何编译安装升级gcc至7.5版本?
linux·运维·c++·centos
我命由我1234524 分钟前
Spring Boot 项目集成 Redis 问题:RedisTemplate 多余空格问题
java·开发语言·spring boot·redis·后端·java-ee·intellij-idea
fail_to_code29 分钟前
递归法的递归函数何时需要返回值
算法
Rocky40134 分钟前
JAVAEE->多线程:锁策略
java·开发语言·jvm
C137的本贾尼40 分钟前
(每日一道算法题)二叉树剪枝
算法·机器学习·剪枝
JSUITDLWXL1 小时前
ideal2022.3.1版本编译项目报java: OutOfMemoryError: insufficient memory
java·开发语言
magic 2451 小时前
Java建造者模式(Builder Pattern)详解与实践
java·开发语言·建造者模式