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向量进行交换