sort函數
一般情況下要將一組數從的大到小排序或從小到大排序,要定義一個新的函數排序。
而我們也可以直接使用在函數下的sort函數,只需加上頭文件:
#include<algorithm>
using namespace std;
sort格式:sort(首元素地址,尾元素的下一個地址,比較函數)
注:比較函數不一定要有,sort函數默認為從小到大排序比較函數,當需要從打到小時就需要加比較函數(cmp),將sort功能改為從大到小
默認從小到大:
#include<stdio.h>
#include<algorithm>
using namespace std;int main()
{int a[5]={9,3,2,4,7};sort(a,a+5); //只有首元素地址和尾元素的下一個地址,不需要cmpfor( int i=0;i<5;i++)printf("%d",a[i]);return 0;
}
運行結果:
sort函數從大到小排序
#include<stdio.h>
#include<algorithm>
using namespace std;
bool cmp(int a,int b) //在main函數前加一個cmp,用bool類型定義
{return a>b; //返回從大到小的排序
}int main()
{int a[5]={9,3,2,4,7};sort(a,a+5,cmp); //加上cmpfor( int i=0;i<5;i++)printf("%d",a[i]);return 0;
}
運行結果:
補充:
bool類型 為邏輯型,它的值只有true(1)和false(0)兩種值。