#include
#include
vector
vec;
//比較函式,這裡的元素型別要與vector儲存的型別一致
bool compare(int a,int b)
std::sort(vec.begin(),vec.end(),compare);
注意:
sort()函式原型申明如下:
template
void sort (randomaccessiterator first, randomaccessiterator last);
template
void sort (randomaccessiterator first, randomaccessiterator last, compare comp);
若不自定義比較函式,預設是按照公升序排序。
vector
vec;
int a=10;
vector
::iterator it=find(vec.begin(),vector.end(),a);
find()原型:
template
inputiterator find (inputiterator first, inputiterator last, const t& val);
將構造型別,比如struct的物件儲存在vector中,查詢時,需要過載等於運算子(operator==),具體實現參考如下**。
struct element;
bool
operator==(const element& ele);
};//自定義比較函式
bool compare(const element& left,const element& right)
//過載輸出操作符<<,格式化輸出element
ostream& operator
<<(ostream& coutu,const element& ele)
int main(){
vector
vecele;
vecele.push_back(element(4,4));
vecele.push_back(element(1,1));
vecele.push_back(element(2,2));
vecele.push_back(element(3,3));
//sort
std::sort(vecele.begin(),vecele.end(),compare);
for(int i=0;icout
vector
::iterator it=find(vecele.begin(),vecele.end(),element(4,4));
cout
<<"found "
<<*it《程式輸出:
a:1,b:1
a:2,b:2
a:3,b:3
a:4,b:4
found a:4,b:4
[1]c++ reference std::sort.
[2]c++ reference std::find.
vector向量容器
vector容器是陣列的乙個泛化推廣,不僅可以像陣列那樣進行元素的隨機訪問,還可以在容器的尾端插入新元素,實現了random access container和back insertion sequence概念。vector具有自動的記憶體管理功能,對於元素的插入和刪除,能夠動態調整占用的記憶體空間...
Vector向量容器
vector向量容器優點 1 vector向量容器不但能像陣列一樣對元素進行隨機訪問,還能在尾部插入元素,是一種簡單 高效的容器,完全可以取代陣列。2 vector向量容器具有記憶體自動管理的功能,對於元素的插入和刪除,可動態調整所佔的記憶體空間。3 對於vector容器的容量定義,可以事先定義乙個...
vector向量容器
vector向量容器 include include vector向量容器標頭檔案 include c語言標頭檔案 include 使用sort演算法 using namespace std bool comp int a,int b 自定義函式從大到小排序 int main cin x v.ins...