1.基本操作
1)头文件 #include<vector>;
2)创建vector对象 eg. vector<int> vec;
3)使用下标访问元素 cout << vec[0] << endl;
4)使用迭代器访问元素
vector<int> :: iterator it;
for(it = vec.begin(); it != vec.end(); it ++)
cout << *it << endl;
5)插入元素
a.尾部插入 vec.push_back(a);
b.在第i个位置插入 vec.insert(vec.begin() + i, a);
6)删除元素
a.删除第i个元素 vec.erase(vec.begin() + (i-1));
b.删除区间[i, j-1] vec.erase(vec.bagin() + i, vec.end() + j);
7)大小 vec.size();
2.算法
1)翻转元素(#include<algorithm>) reverse(vec.begin(), vec.end());
2)排序
a.默认升序 sort(vec.begin(), vec.end());
b.自定义排序 sort(vec.begin(), vec.end(), comp); comp函数:自定义排序方式
3.结构体
struct student{
int id;
char name[20];
int score;
bool operator < (const student &other)const{ //升序
return score > other.score;
}
//OR
bool operator > (const student &other)const{ //降序
return score > other.score;
}
};