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秒