vector中的排序

2021-09-20 22:47:36 字數 652 閱讀 5581

第一種方法:

#include "stdafx.h"

#include

#include

#include

using namespace std; 

struct assesstypeinfo

bool operator >   (const assesstypeinfo& rhs )   const //降序排序時必須寫的函式

}int main() 

以上方法就可以實現公升序排序,輸出結果為 1   2 3  

降序排序結果3   2   1。

方法2 :   不修改結構體或類的定義部分,我們用函式物件來實現:

#include "stdafx.h"

#include

#include

#include

using namespace std; 

struct assesstypeinfo

;bool lessmark(const assesstypeinfo& s1,const assesstypeinfo& s2) 

bool greatermark(const assesstypeinfo& s1,const assesstypeinfo& s2) 

int main() 

VECTOR中pair的排序

vector vec 呼叫排序函式sort sort vec.begin vec.end 預設排序是從小到大,先比較first,在first相等的情況下比較second bool judge const paira,const pairb 通過傳遞乙個函式 judge 給sort函式 注意 judg...

C 中的vector排序問題

最近做的東西,要將vector 中的內容輸出,結果發現有些檔案被交替反覆開啟,所以就想吧vector 中的元素排序,學習中發現下面這篇文章總結的挺好的,分享一下也 c 中當 vector 中的資料型別為基本型別時我們呼叫std sort函式很容易實現 vector中資料成員的公升序和降序排序,然而當...

C 中vector的排序問題

在用vector排序的時候,發現sort 函式有乙個問題,sort排序只會返回排序後的結果,不會返回每個排序後的結果在原來的編號。templatebool cmp const pair x,const pair y templatevoid sortvector vector value,vecto...