Vector的用法
vector容器是笔试时最经常用到的容器,它实际是一个类模板,它所具有一些成员函数我们必须熟练使用,这样才会加快编程速度。
首先加头文件并定义:
#include<vector>
vector<int>vec;
1、获取vector里的元素个数
int len = vec.size();
2、向vector添加元素
int temp;
cin>>temp;
vec.push_back(temp);
3、初始化vector,有五种方式
vector<int>vec; //初始化为空
vector<int>vec(v1); //用另一个vector来初始化,即构造一个副本
vector<int>vec(n, i); //大小为n,并全部初始化为元素i (常用)
vector<int>(n); //构造大小为n的容器,没有初始化里面的元素
vector<int>{1,2,3,4}; //构造大小为4,并初始化里面的各个元素
4、使用迭代器遍历容器
vector<int>::iterator it;
for(it=vec.begin();it!=vec.end();it++){
vec[it]=0;
}
注意:关于vector的下标操作。vector的下标操作只能改变或者获取已有的元素的值,不能往vector里添加元素!
5、vec.empty(); //判断是否为空,为空返回true,否则返回false;
vec.capacity(); //获取容器分配的存储空间,区别于vec,size()
vec.resize(n+m); //调整vec的大小变为n+m
6、vector经常用到的一些函数功能。需加头文件 #include<algorithm>
(1)对元素排序
sort(vec.begin(),vec.end());
(2)反转容器
reverse(vec.begin(), vec.end());
(3)交换元素
swap(vec[i],vec[j]);
Vector的用法的更多相关文章
- c++中vector的用法详解
c++中vector的用法详解 vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间 ...
- STL中的Vector相关用法
STL中的Vector相关用法 标准库vector类型使用需要的头文件:#include <vector>. vector 是一个类模板,不是一种数据类型,vector<int> ...
- C++学习二 vector的用法(使用sort对于vector排序)
一.vector的介绍 vector是C++里面的一个容器,也是我们数学上面理解的向量,有一些比较常见的操作. 二.vector的定义 #include<vector> using nam ...
- STL vector常见用法详解
<算法笔记>中摘取 vector常见用法详解 1. vector的定义 vector<typename> name; //typename可以是任何基本类型,例如int, do ...
- POJ 1230 Pass-Muraille#贪心+vector迭代器用法
(- ̄▽ ̄)-* (注意下面代码中关于iterator的用法,此代码借鉴某大牛) #include<iostream> #include<cstdio> #include< ...
- C++:vector的用法详解
原文地址:http://blog.csdn.net/hancunai0017/article/details/7032383 vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于 ...
- STL————vector的用法
一.什么是vector? 向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container).跟任意其它类型容器一样,它能够存放各种类型的对象.可以简单的认为,向量是一个能 ...
- C++序列容器之 vector常见用法总结
一.关于vector 本文默认读者具有一定的c++基础,故大致叙述,但保证代码正确. vector是一个动态的序列容器,相当于一个size可变的数组. 相比于数组,vector会消耗更多的内存以有效的 ...
- C++ STL(二)vector的用法
##### vector的定义 ```#include <iostream>#include <string>#include <vector>using name ...
- vector基本用法
Vector作为STL容器中的一员,使用频率非常高,因此对其基本用法和实用技巧进行记录,便于后期查询使用. 基本用法 #include <iostream> #include <ve ...
随机推荐
- '假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件所在目录的DOS提示符下键入:PROG ABCDEFGH IJKL<回车>,则输出结果为( ). void main( int argc, char *argv[]) { while(--argc>0) cout<<argv[argc]; cout<<"\n"; }
main(int argc,char *argv[])函数的两个形参,第一个int argc,是记录你输入在命令行(你题目中说的操作就是命令行输入)上的字符串个数:第二个*argv[]是个指针数组,存 ...
- 在Postman中使用不受信任的SSL证书
阅读目录 第一种方案——临时添加到受信任的证书颁发机构: 第二种方案——永久添加到受信任的证书颁发机构: add by zhj: 在http://www.cnblogs.com/ajianbeyour ...
- Fortran与C/C++混合编程示例
以下例子均来自网络,只是稍作了编辑,方便今后查阅. 子目录 (一) Fortran调用C语言 (二) C语言调用Fortran (三) C++ 调用Fortran (四) Fortran 调用 C++ ...
- 基于JDK1.8版本的hashmap源码分析(一)
今天看了下hashmap中的源码,下面列出一些自己的收获 开头,public class HashMap<K,V> extends AbstractMap<K,V> im ...
- linux常用命令 cut字符截取命令
cut 字符截取 cut [选项] 文件名 选项 -f 列号: 提取第几列 -d 分割符:按照指定的分隔符分割列 默认使用制表符("tab")进行分割 ssgao:Download ...
- sed应用
删除每行空白字符 sed -i 's/^[[:space:]]*//' user.txt 删除空白行 sed -i '/^$/d' user.txt
- 【Alpha】项目展示
团队成员介绍 大娃 后端开发人员,主要工作为后端开发,文档撰写. 大娃的个人博客 二娃 PM,主要工作为项目进度把控,平日例会的记录,例会博客及部分其他博客的撰写. 二娃的个人博客 三娃 PM,主要工 ...
- python 统计单词个数,并按个数与字母排序
# coding: utf-8 # In[1]: import collections str = "Be slow to promise and quick to perform" ...
- jQuery获取name相同被选中的多选框的值
var name= ""; $("input:checkbox[name='AllElection']:checked").each(fu ...
- [Leetcode 72]编辑距离 Edit Distance
[题目] Given two words word1 and word2, find the minimum number of operations required to convert word ...