vector

头文件 #include< vector >

小小的声明

vector<int> a; //声明一个int型变量

vector<int> a(10); //初始化大小为10

vector<int> a(10,1); //初始化大小为10,初始值为1

vector<int> b(a.begin(),a.begin()+3); //用a初始化b,0到第二个



数组的初始化



int n[] = {1, 2, 3, 4, 5} ;

vector<int> a(n, n+5) ; //将数组n的前5个元素作为向量a的初值

vector<int> a(&n[1], &n[4]) ; //将n[1] - n[4]范围内的元素作为向量a的初值

上手输入输出

伪码展示

vector<int> a(10,0);

cin>>a[2];

cin>>a[6];

for(int i = 0; i < a.size(); i++)

{

cout<<a[i]<<' ';

}

//迭代器输出



vector<int>::iterator t;//定义一个迭代器

for( t = a.begin(); t != a.end(); t++)

{

cout<< *t <<' ';//以指针的形式

}

向量vector的基操

 1-> a.size()//获取元素个数

 2-> a.empty();//判断是否为空

 3->a.clear();//清空元素

 4-> a = b;
//b赋值给a 整体赋值

 5-> a == b;
//相等则返回1

 6->insert
   {  
       -> a.insert(a.begin(),1000);//把1000插到起始位置前

        -> a.insert(a.begin(),3,1000)//将1000分别插入到向量元素位置的0-2处(共3个元素)

        vector<int> a(5,1);
       vector<int> b(10);
       b.insert(b.begin(),a.begin(),a.end())/*将a.begin(), a.end()之间的全部元素插入到b.begin()前*/
   }

7->erase//删除
 ->a.erase(a.begin());//将起始位置的元素删除
 ->a.erase(a.begin(),a.begin()+3);

8 ->swap//交换
  ->b.swap(a);//a向量与b向量进行交换