博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vertor容器
阅读量:5032 次
发布时间:2019-06-12

本文共 1634 字,大约阅读时间需要 5 分钟。

头文件#include<vector>

1.创建vector对象

1.不指定容器大小  vector <int> v;

2.指定容器大小 vector <double> v(10);

3.附带初值 vector <double> b(10,8.6);//此容器有十个元素,每一个都是8.6;

2.元素的插入

insert()方法可以在vector容器的任意位置插入一个元素,同时所有后面的元素向后移动一位。注意:需要用迭代器;

3.元素的删除

erase()方法可以删除vector中迭代器所指的一个元素或者一段区间中的元素;clear()方法则一次性删除vector中的所有元素。

#include<iostream>

#include<stdio.h>
#include<vector>
#include<algorithm>
bool comp(const int &a,const int &b)
{
    if(a!=b)return a>b;
    else return a>b;
}
using namespace std;
int main()
{
    vector<int>v;//定义verctor容器v;
    v.push_back(2);//随时向尾部添加元素
    v.push_back(5);
    v.push_back(7);
    v.push_back(9);
    v.push_back(11);
    v.push_back(13);
    for(int i=0;i<6;i++)
        printf("%d ",v[i]);//下标法访问vector元素;
    printf("\n");
    //迭代器法访问vector容器元素;
    vector<int>::iterator it;//定义迭代器变量it
    for(it=v.begin();it!=v.end();it++)
        cout<<*it<<" ";//输出迭代器上的元素;
    cout<<endl;
    //元素的插入;
    v.insert(v.begin(),8);
    v.insert(v.begin()+3,4);//在第三个元素前插入4,注意是原始容器的第三个元素之前;
    for(it=v.begin();it!=v.end();it++)
        printf("%d ",*it);
    printf("\n");
    //元素的删除;
    v.erase(v.begin()+2);//删除第二个元素;
    v.erase(v.begin()+3,v.begin()+5);//删除3到5的元素;
    for(it=v.begin();it!=v.end();it++)
        printf("%d ",*it);
    printf("\n");
    /*v.clear();//清空容器中的元素;
    printf("%d\n",v.size());//输出容器的大小;*/
    reverse(v.begin(),v.end());//反向排列容器中的所有元素;
    for(it=v.begin();it!=v.end();it++)
        cout<<*it<<" ";
    cout<<endl;
    sort(v.begin(),v.end());//sort排序;
    for(it=v.begin();it!=v.end();it++)
        cout<<*it<<" ";
    cout<<endl;
    sort(v.begin(),v.end(),comp);//使用comp函数反向排序;
    for(it=v.begin();it!=v.end();it++)
        cout<<*it<<" ";
    cout<<endl;
    cout<<v.empty()<<endl;//判断容器是否为空;
    v.clear();
    cout<<v.empty()<<endl;
    return 0;
}

转载于:https://www.cnblogs.com/liuzhixin-123/p/5402344.html

你可能感兴趣的文章
android中DatePicker和TimePicker的使用
查看>>
SpringMVC源码剖析(四)- DispatcherServlet请求转发的实现
查看>>
Android中获取应用程序(包)的大小-----PackageManager的使用(二)
查看>>
Codeforces Gym 100513M M. Variable Shadowing 暴力
查看>>
浅谈 Mybatis中的 ${ } 和 #{ }的区别
查看>>
CNN 笔记
查看>>
版本更新
查看>>
SQL 单引号转义
查看>>
实现手机扫描二维码页面登录,类似web微信-第三篇,手机客户端
查看>>
PHP socket客户端长连接
查看>>
7、shell函数
查看>>
【转】Apache Jmeter发送post请求
查看>>
【凸优化】保留凸性的几个方式(交集、仿射变换、投影、线性分式变换)
查看>>
NYOJ-613//HDU-1176-免费馅饼,数字三角形的兄弟~~
查看>>
TFS --- GrantBackup Plan Permissions Error
查看>>
软工作业3:用户体验分析——以“南通大学教务管理系统微信公众号”为例
查看>>
Css:背景色透明,内容不透明之终极方法!兼容所有浏览器
查看>>
我们前端跟后端是怎么合作的
查看>>
mysql存储过程
查看>>
洛谷P2556 [AHOI2002] 黑白图像压缩 [模拟]
查看>>