vector说明:
vector中文翻译为向量,实际上不是很准确。
一般数组是指 int a[100005]这种,而vector准确来说是提供了另一种数组的实现,比前者更为严谨,更节省空间。操作上很像封装好的栈
进行vector
操作前应添加头文件#include <vector>或者#include<bits/stdc++.h>
vector使用:
定义:
空的
vector<int>v;
初始化为{1,2,3,4}
vector<int>v={1,2,3,4};
分配指定长度的空间
vector<int>a(10005); //表示分配10005个0,这种定义a和 int a[10005]定义a是一模一样的
操作:
赋值
这是因为c++规定大括号括起来的,类型是vector的
vector<int>v;
v={1,2,3,4};
求长度
vector<int>v={1,2,3,4};
int len=v.size(); //len是长度
尾部压入
v.push_back(0) //push表示压入,back表示尾部
vector优点就是开始即是为空,后面也可以慢慢压入。这点int a[105]这种定义是没有的。同时vector也可以说是一个栈(栈可以 s.push()压入),但是栈又是不透明的(无法访问前面的元素)。vector可以说是封装的最万能的数据结构了
尾部弹出
v.pop_back()
调用
cout<<v[2]<endl; //和数组一样,范围0 ~ len-1
从小到大排序
sort(v.begin(),v.end());
打印:
int len=l.size()
for(int i=0;i<len;i++)
cout<<v[i]<<" ";