今天在刷PAT的时候刷到了1075 链表元素分类,发现了如下操作
vector a 的后面插了两个东西,取查了下API发现了vector的insert函数的用法:
发现可以在指定位置loc前面插入元素,然后做了一些实验来验证:
My Code:
#include<iostream>
#include<vector>
using namespace std;
int main() {
vector<int> v1, v2, v3;
v1.push_back(1);
v1.push_back(1);
v1.push_back(1);
v2.push_back(2);
v2.push_back(2);
v2.push_back(2);
v3.push_back(3);
v3.push_back(3);
v3.push_back(3);
for (auto it = v1.begin(); it != v1.end(); it++) {
cout << (*it) << " ";
}
cout << endl;
v1.insert(v1.end(), v2.begin(), v2.end());
for (auto it = v1.begin(); it != v1.end(); it++) {
cout << (*it) << " ";
}
cout << endl;
v1.insert(v1.end(), v3.begin(), v3.end());
for (auto it = v1.begin(); it != v1.end(); it++) {
cout << (*it) << " ";
}
return 0;
}
Output:
Code2:
#include<iostream>
#include <vector>
using namespace std;
void printVector(vector<int>& v) {
for (vector<int>::iterator it = v.begin(); it != v.end(); it++) {
cout << *it << " ";
}
cout << endl;
}
//插入和删除
void test01()
{
vector<int> v1;
//尾插
v1.push_back(10);
v1.push_back(20);
v1.push_back(30);
v1.push_back(40);
v1.push_back(50);
printVector(v1);
//尾删
v1.pop_back();
printVector(v1);
//插入
v1.insert(v1.begin(), 100);
printVector(v1);
v1.insert(v1.begin(), 2, 1000);
printVector(v1);
//删除
v1.erase(v1.begin());
printVector(v1);
//清空
v1.erase(v1.begin(), v1.end());
v1.clear();
printVector(v1);
}
int main() {
test01();
system("pause");
return 0;
}
Output: