vector操作

vector(向量)

vector是 连续内存 容器

#include <iostream> #include <vector> using namespace std;

int main() {     vector<int> vvv(10);     cout<<vvv.size()<<endl;        //输出10     vvv.clear();     cout<<vvv.size()<<endl;         //输出0     vector<int> v;     cout<<v.size()<<endl;         //输出0     v.push_back(1);              //push_back     v.push_back(7);     v.push_back(10);     v.push_back(5);     v.push_back(6);     /*for(int i=0;i<v.size();++i)     {         cout<<v[i]<<endl;     }     v.pop_back();                //pop_back;     cout<<"--------------------\n";     for(int i=0;i<v.size();++i)     {         cout<<v[i]<<endl;     }*/     //cout<<v.size()<<endl;        //size     //cout<<v.max_size()<<endl;    //max_size     //cout<<v.front()<<endl;          //front     //cout<<v.back()<<endl;           //back     /*if(v.empty())                    //empty         cout<<"空\n";     else         cout<<"不空\n";     v.clear();                       //clear     if(v.empty())         cout<<"空\n";     else         cout<<"不空\n";*/     /*vector<int>::iterator l_it;     for(l_it=v.begin();l_it!=v.end();++l_it)  //顺序输出     {         cout<<*l_it<<endl;     }     cout<<"--------------------\n";     vector<int>::reverse_iterator ll_it;     for(ll_it=v.rbegin();ll_it!=v.rend();++ll_it)  //倒序输出     {         cout<<*ll_it<<endl;     }*/

    //v.erase(v.begin(),v.end()-2);       //erase,参数是迭代器     /*v.erase(v.begin()+2);*/     vector<int> vv;     vv.push_back(99);     vv.push_back(127);     vv.push_back(145);     vv.push_back(75);     vv.push_back(96);     vector<int>::iterator l_it;     //v.insert(v.begin()+1,0) ;                            //insert,3种,参数是迭代器     //v.insert(v.begin(),3,5);     //v.insert(v.begin()+1,vv.begin()+2,vv.end()-1);     /*for(l_it=v.begin();l_it!=v.end();++l_it)  //顺序输出     {         cout<<*l_it<<endl;     }     cout<<"--------------------\n";     v.swap(vv);     for(l_it=v.begin();l_it!=v.end();++l_it)  //顺序输出     {         cout<<*l_it<<endl;     }*/

    return 0; }

 

Vectors 包含着一系列连续存储的元素,其行为和数组类似。访问Vector中的任意元素或从末尾添加元素都可以在常量级时间复杂度内完成,而查找特定值的元素所处的位置或是在Vector中插入元素则是线性时间复杂度

Constructors构造函数
Operators对vector进行赋值或比较
assign()对Vector中的元素赋值
at()返回指定位置的元素
back()返回最末一个元素
begin()返回第一个元素的迭代器
capacity()返回vector所能容纳的元素数量(在不重新分配内存的情况下)
clear()清空所有元素
empty()判断Vector是否为空(返回true时为空)
end()返回最末元素的迭代器(译注:实指向最末元素的下一个位置)
erase()删除指定元素
front()返回第一个元素
get_allocator()返回vector的内存分配器
insert()插入元素到Vector中
max_size()返回Vector所能容纳元素的最大数量(上限)
pop_back()移除最后一个元素
push_back()在Vector最后添加一个元素
rbegin()返回Vector尾部的逆迭代器
rend()返回Vector起始的逆迭代器
reserve()设置Vector最小的元素容纳数量
resize()改变Vector元素数量的大小
size()返回Vector元素数量的大小
swap()交换两个Vector
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值