C 標準庫 vector排序

2021-06-20 04:54:56 字數 682 閱讀 4646

前天要做乙個對c++ stl的vector容器做乙個排序操作,之前一直把vector當做乙個容量可自動變化的陣列,是的,陣列,所以打算按照對陣列進行排序的方法:用快速排序或是氣泡排序等演算法自己寫乙個排序的函式。後來覺得stl這麼強大,應該有它自己的排序方法(沒有好好學習啊),然後就去google了一下,果然有,而且可以自定義排序的函式,太強大了(而且效率應該比我自己寫的要好吧)。

[cpp]view plain

copy

print?

// #include "stdafx.h"

#include 

#include 

#include 

//先自定義乙個結構體

struct test ;  

//自定義排序函式

bool sortbym1( const test &v1, const test &v2)//注意:本函式的引數的型別一定要與vector中元素的型別一致

void mypushback(std::vector& vectest, const

int &m1, const

int &m2)  

void printvector( std::vector& vec)  

}  int _tmain(int argc, _tchar* argv)    

C 標準庫vector型別

vector屬於順序容器,所謂順序容器,就是元素的順序與元素的值無關,與元素加入容器的位置相對應。對於vector可以將其理解為可變大小陣列,支援快速隨機訪問,在尾部之外的位置插入刪除可能會比較慢。了解完概念接下來就開始學習它的用法 假設以下 前面都包含vector標頭檔案,幷包含using nam...

c 標準庫型別 vector

一 標準庫型別vector表示物件的集合,物件型別相同,需要 include using namespace std or using std vector 二 定義和初始化vector物件 vectorv1 vectorv2 v1 vectorv2 v1 vectorv3 n,val n個val元...

C 標準庫型別 vector

vector表示物件的集合,其中所有的物件的型別均相同。如果需要使用vector,需要 include using std vector vector name 其中t表示物件的型別,除了基本內建型別外,也可以是string,甚至是vector型別vectorv1 預設初始化 vectorv2 v1...