数据结构之向量vector

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhangquan2015/article/details/82855761

使用STL实现vector向量

这里将借助STL的vector(向量)实现动态数组,并用它来管理数据。

函数 功能 复杂度
size() 返回向量的元素数 O(1)
push_back(x) 在向量尾添加元素x O(1)
pop_back() 删除向量的最后一个元素 O(1)
begin() 返回指向向量开头的迭代器 O(1)
end() 返回指向向量尾的迭代器 O(1)
insert(a,x) 在向量的位置a处插入元素x O(n)
erase(a) 删除向量中位置a的元素 O(n)
clear() 删除向量中所有元素 O(n)
#include<iostream>
#include<vector>
using namespace std;

void print(vector<double> V) {
	for (int i = 0; i < V.size(); i++) {
		cout << V[i] << " ";
	}
	cout << endl;
}

int main() {
	vector<double> V;
	V.push_back(0.1);
	V.push_back(0.2);
	V.push_back(0.3);
	V[2] = 0.4;
	print(V);//0.1 0.2 0.4

	V.insert(V.begin() + 2, 0.8);
	print(V);//0.1 0.2 0.8 0.4

	V.erase(V.begin() + 1);
	print(V);//0.1 0.8 0.4

	V.push_back(0.9);
	print(V);//0.1 0.8 0.4 0.9

	system("pause");
	return 0;
}

猜你喜欢

转载自blog.csdn.net/zhangquan2015/article/details/82855761