sort函数的用法
发布日期:2021-06-29 05:01:04
浏览次数:2
分类:技术文章
本文共 1779 字,大约阅读时间需要 5 分钟。
参考博客:
sort函数的用法(C++排序库函数的调用)
头文件是#include<algorithm>
(一)为什么要用c++标准库里的排序函数
Sort()函数是c++一种排序方法之一,学会了这种方法也打消我学习c++以来使用的冒泡排序和选择排序所带来的执行效率不高的问题!因为它使用的排序方法是类似于快排的方法,时间复杂度为n*(n),执行效率较高! (二)c++标准库里的排序函数的使用方法 I)Sort函数包含在头文件为#include<algorithm>的c++标准库中,调用标准库里的排序方法可以不必知道其内部是如何实现的,只要出现我们想要的结果即可! II)Sort函数有三个参数: (1)第一个是要排序的数组的起始地址。 (2)第二个是结束的地址(最后一位要排序的地址的下一地址) (3)第三个参数是排序的方法,可以是从大到小也可是从小到大,还可以不写第三个参数,此时默认的排序方法是从小到大排序。 Sort函数使用模板: Sort(start,end,排序方法)sort函数没有第三个参数,实现的是从小到大
举例:从大到小降序排列
#include#include using namespace std; bool compare(int a,int b){ return a>b; //由大到小的降序排列 }int main(){ int ar[1000]; int t,n,i; scanf("%d",&t); while(t--) { scanf("%d",&n); for(i=0;i
(二)c++标准库强大的功能完全可以解决这种麻烦。
Sortt函数的第三个参数可以用这样的语句告诉程序你所采用的排序原则:
less<数据类型>()//从小到大排序
greater<数据类型>()//从大到小排序
1.sort(a,b,c<int>());
#include#include using namespace std;int main() { int a[10]= {9,6,3,8,5,2,7,4,1,0}; sort(a,a+10,less ());//从小到大排序 for(int i=0; i<10; i++) cout< <<" "; return 0;}
2、greater<int>()
#include#include using namespace std;int main() { int a[10]= {9,6,3,8,5,2,7,4,1,0}; sort(a,a+10,greater ());//从大到小排序 for(int i=0; i<10; i++) cout< <<" "; return 0;}
3、
sort函数也可以实现对字符的排序,sort(a,b,c<char>());如对"asdfghjklk"进行排序,从大到小排序
#include#include using namespace std;int main(){ char a[11]="asdfghjklk"; sort(a,a+10,greater ());//从大到小 for(int i=0;i<10;i++) cout< <<""; return 0;}
#include#include using namespace std;int main(){ char a[11]="asdfghjklk"; sort(a,a+10,less ());//从小到大 for(int i=0;i<10;i++) cout< <<" "; return 0;}
转载地址:https://blog.csdn.net/zhao2chen3/article/details/82977247 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
关注你微信了!
[***.104.42.241]2024年04月03日 11时53分44秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
如何避免掉进心理陷阱?
2019-04-29
从价值观选择到重构思维模型
2019-04-29
如何识别推理过程中的谬误?
2019-04-29
【周末分享】基因编辑技术的现状与未来
2019-04-29
脑机融合,当梦想照进现实
2019-04-29
请回答2019
2019-04-29
Qt开发的图标登录游戏设计
2019-04-29
spring4使用外部属性文件配置问题
2019-04-29
easyconnect一直初始化无法连上问题
2019-04-29
安装 SPRING TOOL SUITE以及没有namespace解决办法
2019-04-29
java.lang.NoSuchFieldException
2019-04-29
mysql找到相对应mysql-connector-java-xxx.jar的方法
2019-04-29
Android studio成功运行自带模拟器问题详解,捎带中文用户名路径有感
2019-04-29
pygame开发的炸弹人游戏(详细讲解)
2019-04-29
finalshell上传文件失败
2019-04-29
tensorboard入门代码
2019-04-29
Ubuntu中安装了GPU—相关查看指令
2019-04-29
为什么randn生成的向量均值不为0
2019-04-29
梯度下降算法结束条件
2019-04-29