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

广州做网站的网络公司网站建设美文

广州做网站的网络公司,网站建设美文,怎么弄数据库备份做网站,wordpress不显示文章如何理解优先队列结构体或类的自定义排序方式 在结构体或类中重载小于号 首先 默认为大根堆 top为最大的元素 struct Student {string name;int score;bool operator<(const Student &other) const {return score<other.score;} };priority_queue<Student>p…

如何理解优先队列结构体或类的自定义排序方式

在结构体或类中重载小于号

首先 默认为大根堆 top为最大的元素

struct Student {string name;int score;bool operator<(const Student &other) const {return score<other.score;}
};priority_queue<Student>pq;

注意 结构体当然要自定义排序方式 上面的就是实现默认大根堆顺序 把score最大的放在top

看小于号方向就行了 都是重载的小于号 只要return里的不等号也是小于号 那么就是默认大根堆顺序

如果要改成小根堆 就把不等号改成大于号就行
return的方向跟重载的<相反 那么就理解为跟默认排序方式相反 就变成了小根堆

在结构体外另写仿函数

理解方式跟上面一样 但重载的是()

struct cmp{bool operator()(const Student&a,const Student&b) const{return a.score>b.score;//不等号方向跟上面的重载一样 这里的写法就是小根堆}
};
//结构体中没有重载小于号
priority_queue<Student,vector<Student>,cmp>pq;





set在结构体或类中重载小于号

重载方式跟sort一样

struct node{int x,y;bool operator<(node other) const{return x<other.x;}
};
set<node>st;//按照x升序排序


关于内置数据类型的排序

– 建议直接用greater<int>
set默认升序 set<int,greater<int>>st; 就变成降序

– pq默认大根堆priority_queue<int,vector<int>,greater<int>>pq;
就变成了小根堆



– 当然也可以自己搞
写一个仿函数
记得重载的是()
不是<

set

struct cmp {bool operator()(const int& a, const int& b) const {return a > b; // 降序排序}
};
set<int,cmp>st;

set的排序 就跟sort的cmp一样理解
a>b表示大的在前面 就是降序

priority_queue

默认大根堆

struct cmp {bool operator()(const int& a, const int& b) const {return a > b;//小根堆}
};
priority_queue<int,vector<int>,cmp)pq;

理解方式同自定义数据类型

http://www.dtcms.com/a/494373.html

相关文章:

  • 云原生时代的数据库字段加密:在微服务与 Kubernetes 中实现合规与敏捷的统一
  • 虚拟机监控全攻略:从基础到云原生实战
  • fastgpt 社区版探究:mongo db 全文检索算法探秘
  • 防爆手机与普通手机有什么区别?防爆手机哪个牌子好?
  • 聊聊 Unity(小白专享、C# 小程序 之 日历、小闹钟)
  • 在vscode中全选后,同时在每行行尾,开始多行编辑(Mac版)
  • C4D域的重要修改层之延迟衰减和量化之解析
  • 建设银行网站网址是什么柳州电商网站建设
  • 记录WinFrom 使用 Autoupdater.NET.Official 进行软件升级更新,避免遗忘
  • 【汇编】RAX,eax,ax,ah,al 关系
  • 苍穹外卖 Day12 实战总结:Apache POI 实现 Excel 报表导出全流程解析
  • 网站分页符怎么做珠海网站建设哪个好薇
  • Redis的Docker安装
  • Windows 11 24H2 图形化安装 Docker Desktop(自定义安装路径到 D 盘)
  • python+uniapp基于微信小程序的瑜伽体验课预约系统
  • 什么是Bug呢?
  • 怎么制作网站记事本嘉兴网络科技有限公司
  • 外贸网站建设有用吗做外贸常用那几个网站
  • 【小白笔记】在 PyTorch 和 NumPy 这样的张量库中,形状(Shape) (3,) 的真正含义
  • 新版视频直播点播平台EasyDSS用视频破局,获客转化双提升
  • 【OS笔记07】:进程和线程5-进程的同步与互斥
  • 基于Session和Redis实现短信验证码登录
  • 视觉Slam14讲笔记第6讲非线性优化
  • 仓库管理系统:定义、需求和​​类型
  • 项目管理进阶——解读 软件质量体系白皮书【附全文阅读】
  • ARQC生成模拟
  • 网站架构演变过程ui和网页设计
  • ASR+LLM:B站学习视屏下载并生成学习笔记
  • C++中的引用
  • Linux 系统下 ZONE 区域的划分