sort
利用sort函數實現。
#include <algorithm>
using namespace std;
sort(first_pointer,first_pointer+n,cmp)
此函數有3個參數:
參數1:第一個參數是數組的首地址,一般寫上數組名就可以,因爲數組名是一個指針常量。
參數2:第二個參數相對較好理解,即首地址加上數組的長度n(代表尾地址的下一地址)。
參數3:默認可以不填,如果不填sort會默認按數組升序排序。也就是1,2,3,4排序。也可以自定義一個排序函數,改排序方式爲降序什麼的,也就是4,3,2,1這樣。
sort(A,A+n):對數組A的0~n-1元素進行升序排序。
sort(v.begin(),v.end()):對於向量V進行升序排序。
bool compare(int a,int b)
{
return a<b; //升序排列,如果改爲return a>b,則爲降序
}
若將第三個參數的函數寫成:
bool compare(Stu s1,Stu s2)
{
return s1.score<s2.score;
}
sort(S,S+100,compare);
則表示按照結構體Stu的score升序排序。