算法竞赛阶段二-数据结构(34)数据结构链表STL vector
//顺序表与stl
//vector创建
#include<bits/stdc++.h>
using namespace std;
const int N=10;
vector<int>a;//空
vector<int>a1(N);
vector<int> a2(N,3);
vector<int>a3={1,2,3,4};
vector<string>a4;
//,,,,,,
//size==n(实际元素的个数)
//打印
//多个带名字用stl;
//void print(vector <int>&arr)//要传名字了 ,&省空间
//{
// for(int i=1;i<=arr.size();i++)//越界
// {
// cout<<arr[i]<<" ";
// }
// cout<<endl;
// }
void print(vector <int>&arr)//要传名字了 ,&省空间
{
for(int i=0;i<arr.size();i++)//要从0循环到<.size()
{
cout<<arr[i]<<" ";
}
cout<<endl;
}
//empty判断空返回true
//if(a1==empty)
//cout<<"空";
//begin end 范围for(迭代器)
void printdie(vector <int>a)
{
// for(vector<int>::iterator it = a.begin(); it!=a.end();it++)
// {
// cout<<*it<<" ";
// }cout<<endl;
// for(auto e=a.begin();e<a.end();e++)
//
// {
// cout<<*e<<" ";
// }cout<<endl;
for(auto x:a)
cout<<x<<" ";
cout<<endl;
}
//push_back,pop_back 。erase和insert复杂度高不用
//while(!=a.empty())
//{
// a.pop_back;
//}
//front() ,,back()返回首尾元素
//resize重置大小
//大于原来补0,小于全删
//clear()遍历清空
int main()
{
print(a2);
print(a3);
printdie(a2);
a.push_back(2);
print(a);
cout<<a3.front()<<" "<<a3.back()<<endl;
a3.resize(10); printdie(a3);
a3.resize(2); printdie(a3);
a3.clear() ;cout<<a3.size();
return 0;
}