优点:排序快,时间复杂度约为log(n)级别
缺点:不稳定,例如两个同样的数,排序后第一个出现的可能在前,也可能在后。
例如排序5,4,3,3排序后为3,3,4,5,原始序列第一个3可能在排序后会成为第二个,也可 能不变
注意事项:使用sort函数需要头文件`#include<algorithm>`
或万能头文件`#include<bits/stdc++.h>`
格式:sort(起始位置,结束位置,排序规则)
注意:起始位置是一个地址,而非变量或数字
sort函数共有三个参数,第三个参数可以不写,默认从小到大排序(升序),代码如下:
sort(a+1,a+n+1);
如需实现从大到小排序(降序),需定义一个排序规则函数,代码:
bool cmp(int a,int b)
{
return a>b;
}
sort(a+1,a+n+1,cmp);
测试代码:
#include<bits/stdc++.h>
using namespace std;
int a[9];
bool cmp(int x,int y)
{
return x>y;
}
int main()
{
for(int i=0;i<9;i++)
{
cin>>a[i];
}
sort(a,a+9,cmp);
for(int i=0;i<9;i++)
{
cout<<a[i]<<" ";
}
return 0;
}
运行结果: