可以看作是一個封裝好的動態數組
定義一個 int 類型 vector
vector<int>a;
//不止 int、string、char 類型,還可以自己定義結構體類型
結構體相關例題見👇
方法
插入元素到尾部
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);
//定義比較函數,降序排序
排序相關題目見 👇
定義一個二維數組
vector<vector<int>>a;
二維數組相關例題見👇
渣渣初學者渴望得到大佬們指點