acm第3次STL(vector)

一、vector
1、定義:動態數組,動態改變儲存空間的大小,定義的數組可以沒有界限
2、應用:
頭文件#include
定義:vector <數據結構> 變量名;
如:vector v;
操作:
empty() – 表示vector是爲空 (v.empty() )
size() – 返回vector內元素個數 (v.size() )
push_back(a) 將元素a插入最尾端(v.push_back)
pop_back() 將最尾端元素刪除(v.push_back)
v[i] 類似數組取第i個位置的元素(v[0] )
erase(it)刪除迭代器it指定位置的元素 (v.erase(it))
v.begin()+vector數組下標i,表示數組中第i個元素的位置,一般用迭代器it=v.begin()+i,表示第i個元素的位置

3、例子:
#include
#include
#include
using namespace std;
int main(){
vector a;
for (int i = 0; i < 5; ++i){
a.push_back(5 - i);
}
cout << "Size: " << a.size() << endl;
a.pop_back();
a[0] = 1;
cout << "Size: " << a.size() << endl;
for (int i = 0; i < (int)a.size(); ++i){
cout << a[i] << ", " << endl;
}
cout << endl;
return 0;
}
運行結果:
Size:5
Size:4
1,
4,
3,
2,
二、如何刪除vector中的元素?
v. erase (iterator position);//刪除指定元素
v. erase (iterator first, iterator last);  //刪除指定範圍內的元素
for(it=iVec.begin();it!=iVec.end()?
{
if(*it % 3 ==0)
it=iVec.erase(it); //刪除元素,返回值指向已刪除元素的下一個位置
else
++it; //指向下一個位置
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章