| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> c++排序 sort()、priority_queue优先队列(注意队列只能在尾部拿到元素,这就导致看到的顺序与实际顺序相反) -> 正文阅读 |
|
[数据结构与算法]c++排序 sort()、priority_queue优先队列(注意队列只能在尾部拿到元素,这就导致看到的顺序与实际顺序相反) |
1.sort算法排序 ?sort(起始地址,结束地址)基本的数据类型从小到大排序 以int数据类型为例: vector<int>?v?=?{2,1,4,5,3}; ?sort(v.begin(),?v.end()); 输出结果为 PS C:\Users\17635> cd "c:\Users\17635\Desktop\kbfvictory\c++练习\" ; if ($?) { g++ kbf.cpp -o kbf } ; if ($?) { .\kbf } 从大到小可以使用sort(ve.begin(), v.end(), greater<int>())这种方式实现。 自定义数据类型排序,可以写个bool函数实现,如下:
输出结果如下:
bool函数里面当第一个参数大于第二个参数为从大到小排序;反之,当第一个参数小于第二个参数时为从小到大排序。 2.priority_queue排序 当我们需要用有限队列priority_queue对自定义数据类型进行排序时需要传入三个数据类型来构建对象?priority_queue<排序对象的数据类型, vector<排序对象的数据类型>, 重载()的自定义数据类型(里面包含重载())>, 如下:
结果如下:
当排序的数据类型为基本数据类型时,第三个数据类型可不写,默认从小到大排序(注意:由于时对列,头只能进入数据而为尾部是出数据,所有如果以出对的顺序来访问元素的话,会从大到小显示,刚好与我们排序相反,因为我们是从队尾开始访问数据) |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 6:36:01- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |