C++ vector容器的排序 (从小到大,从大到小)

目录

从小到大

从大到小

方法一:greater()

方法二:自定义函数

方法三:使用sort排序后,使用reverse() 


从小到大

sort的头文件

#include 
#include 
#include 
using namespace std;

int main() {
	int a[] = {8,6,2,9,3,5,4,1,7,10};
 	vector arr(a, a+5);
	sort(arr.begin(),arr.end()); 
 	for(int i = 0; i 

从大到小

  • 方法一:greater()

sort默认排序从小到大,使用greater()

#include 
#include 
#include 
using namespace std;

int main() {
	int a[] = {8,6,2,9,3,5,4,1,7,10};
 	vector arr(a, a+5);
	sort(arr.begin(),arr.end(),greater()); 
 	for(int i = 0; i 
  • 方法二:自定义函数

#include 
#include 
#include 
using namespace std;

bool cmp_max(int x,int y){
	return x > y;
}

int main() {
	int a[] = {8,6,2,9,3,5,4,1,7,10};
 	vector arr(a, a+5);
	sort(arr.begin(),arr.end(),cmp_max); 
 	for(int i = 0; i 
  • 方法三:使用sort排序后,使用reverse() 

       reverse()只能 将元素倒置,但不排列

#include 
#include 
#include 
using namespace std;

int main() {
	int a[] = {8,6,2,9,3,5,4,1,7,10};
 	vector arr(a, a+5);
 	sort(arr.begin(),arr.end());
	reverse(arr.begin(),arr.end());
 	for(int i = 0; i 

你可能感兴趣的:(STL,c++)