c++ STL 之 vector 的學習總結及其知識點對應習題


可以看作是一個封裝好的動態數組

定義一個 int 類型 vector

vector<int>a;
//不止 int、string、char 類型,還可以自己定義結構體類型

結構體相關例題見👇

vector PTA 7-10 宿舍誰最高?

vector PTA 7-7 計算職工工資

方法

插入元素到尾部

a.push_back(10);
//插入 10 

刪除元素

a.erase(a.begin()+i);
//刪除第 i 個元素 

返回元素個數

int num = a.size();

遍歷 vector 中的元素

1.下標遍歷

for(int i = 0; i < a.size()){
    cout<<a[i]<<endl;
    //下標從 0 開始
}

2.迭代器遍歷

for(vector<int>::iterator it = a.begin();it != a.end(); it++){
    cout<<*it<<endl;
}

插入元素

a.insert(a.begin()+i, 20);
//在第 i 個位置插入元素20

清空元素

a.clear();
//將 a 中數據全部清除

判斷 vector 是否爲空

bool x = a.empty();
//若 a 爲空 x 爲 true , 否則爲 false

排序

1.升序排序

sort(a.begin(),a.end());
//該方法默認爲升序排序

2.降序排序

sort(a.begin(),a.end());
reverse(a.begin(),a.end());
//升序排序後將其反轉
bool cmp(int x,int y){
    return x > y;
}
sort(a.begin(),a.end(),cmp);
//定義比較函數,降序排序

排序相關題目見 👇

sort填坑 洛谷 P1104 生日

定義一個二維數組

vector<vector<int>>a;

二維數組相關例題見👇

vector二維數組 PTA 7-4 找鞍點


渣渣初學者渴望得到大佬們指點
在這裏插入圖片描述

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