sort排序

Posted 卷王之王1.0

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sort排序相关的知识,希望对你有一定的参考价值。

头文件 algorithm

	
    sort(数组起始地址,结束地址,不写默认从小到大);
    sort(a,a+N);     //从小到大排序
	sort(a,a+N,greater<int>());     //从大到小排序
#include<iostream>
#include<algorithm>
using namespace std;
int main()

	int N;
	cin>>N;
	int a[N];
	for(int i=0;i<N;i++)
		cin>>a[i];
	

	cout<<endl;
	sort(a,a+N);                    //从小到大排序
	for(int i=0;i<N;i++)
		cout<<a[i]<<" ";
	
	cout<<endl;
	sort(a,a+N,greater<int>());     //从大到小排序
	for(int i=0;i<N;i++)
		cout<<a[i]<<" ";
	
	return 0;

等价输出

	for(int i:a)		//这个是C++ 11的语法 for(int a:b) 
						//从数组b依次取出元素赋值给整型变量a
		cout<<i<<" ";
	

cmp可以实现各种各样的功能,不止排序

下面写的等价与greater<int>()

bool cmp(int x,int y)
	return x>y;
#include<iostream>
#include<algorithm>
using namespace std;

bool cmp(int x,int y)
	return x>y;

int main()

	int N;
	cin>>N;
	int a[N];
	for(int i=0;i<N;i++)
		cin>>a[i];
	
	cout<<endl;

	sort(a,a+N,cmp);
	
	for(int i=0;i<N;i++)
		cout<<a[i]<<" ";
	
	return 0;

那么

bool cmp(int x,int y)
	if(x%3!=y%3)
		return x%3<y%3;
	
	else
		return x<y;
	

以上是关于sort排序的主要内容,如果未能解决你的问题,请参考以下文章

sort、sorted排序技巧(多级排序)

Python 使用列表的sort()进行多级排序实例演示,list的sort()排序方法使用详解,python3中sort()的cmp自定义排序方法,sort()的逆序倒叙排序方法

js sort原理

sort() 数组的元素进行排序的方法

基础篇9 # 排序:冒泡排序(Bubble Sort)插入排序(Insertion Sort)选择排序(Selection Sort)

Python 二维列表,用sorted函数怎么多重排序?