一、vector的介绍

vector是C++里面的一个容器,也是我们数学上面理解的向量,有一些比较常见的操作。

二、vector的定义

#include<vector>
using namespace std;

//int 说明的是vector存储的数据类型
vector<int> odd_vector;

三、vector的一些操作(具体调用方式自行查找)

1.push_back   在数组的最后添加一个数据
2.pop_back    去掉数组的最后一个数据 
3.at                得到编号位置的数据
4.begin           得到数组头的指针
5.end             得到数组的最后一个单元+1的指针
6.front        得到数组头的引用
7.back            得到数组的最后一个单元的引用
8.max_size     得到vector最大可以是多大
9.capacity       当前vector分配的大小
10.size           当前使用数据的大小
11.resize         改变当前使用数据的大小,如果它比当前使用的大,者填充默认值
12.reserve      改变当前vecotr所分配空间的大小
13.erase         删除指针指向的数据项
14.clear          清空当前的vector
15.rbegin        将vector反转后的开始指针返回(其实就是原来的end-1)
16.rend          将vector反转构的结束指针返回(其实就是原来的begin-1)
17.empty        判断vector是否为空(vector.empty())
18.swap         与另一个vector交换数据
三、使用sort对于vector分类

用法:

#inlcude <algorithm> 
sort(vector.begin(),vector.end());

例子如下:

#include <algorithm> //使用sort需要包含这个头文件
//这个方法的主要的作用是把一个向量里面的奇数找出来放到原来的位置
class Kata
{
public:
std::vector<int> sortArray(std::vector<int> array)
{
if(array.empty())
return array;
std::vector<int> odd_vector;
for(int i=;i<array.size();i++)
{
if(array[i]%==)
{
odd_vector.push_back(array[i]);
}
}
if(odd_vector.size()>)
{
//sort对于vector向量的排序,升序排列
sort(odd_vector.begin(),odd_vector.end());
int number=;
for(int i=;i<array.size();i++)
{
if(array[i]%==)
{
array[i]=odd_vector[number];
number++;
}
}
}
return array;
}
};

C++学习二 vector的用法(使用sort对于vector排序)的更多相关文章

  1. 关于C++中vector和set使用sort方法进行排序

    C++中vector和set都是非常方便的容器, sort方法是algorithm头文件里的一个标准函数,能进行高效的排序,默认是按元素从小到大排序 将sort方法用到vector和set中能实现多种 ...

  2. JVM学习--(二)内存模型、可见性、指令重排序

    我们将根据JVM的内存模型探索java当中变量的可见性以及不同的java指令在并发时可能发生的指令重排序的情况. 内存模型 首先我们思考一下一个java线程要向另外一个线程进行通信,应该怎么做,我们再 ...

  3. STL vector常见用法详解

    <算法笔记>中摘取 vector常见用法详解 1. vector的定义 vector<typename> name; //typename可以是任何基本类型,例如int, do ...

  4. 容器的分类与各种测试(二)——vector部分用法

    向量 vector 是一种对象实体, 能够容纳许多其他类型相同的元素, 因此又被称为容器. 与string相同, vector 同属于STL(Standard Template Library, 标准 ...

  5. STL之二:vector容器用法详解

    转载于:http://blog.csdn.net/longshengguoji/article/details/8507394 vector类称作向量类,它实现了动态数组,用于元素数量变化的对象数组. ...

  6. STL学习二:Vector容器

    1.Vector容器简介 vector是将元素置于一个动态数组中加以管理的容器. vector可以随机存取元素(支持索引值直接存取, 用[]操作符或at()方法,这个等下会详讲). vector尾部添 ...

  7. C++序列容器之 vector常见用法总结

    一.关于vector 本文默认读者具有一定的c++基础,故大致叙述,但保证代码正确. vector是一个动态的序列容器,相当于一个size可变的数组. 相比于数组,vector会消耗更多的内存以有效的 ...

  8. c++中vector的用法详解

    c++中vector的用法详解 vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间 ...

  9. C++中vector的用法

    C++内置的数组支持容器的机制,但是它不支持容器抽象的语义.要解决此问题我们自己实现这样的类.在标准C++中,用容器向量(vector)实现.容器向量也是一个类模板.标准库vector类型使用需要的头 ...

随机推荐

  1. CentOS系统登陆root用户后发现提示符显示-bash-4.2#(已解决)

    问题: 在root用户下终端显示,如图所示: 尝试退出登陆root用户依然不能解决 原因: root主目录下缺失.bash_profile和.bashrc文件 Tip: /etc/profile: 此 ...

  2. 对于Python语音性能的一些个人见解

    虽然运行速度慢是 Python 与生俱来的特点,大多数时候我们用 Python 就意味着放弃对性能的追求.但是,就算是用纯 Python 完成同一个任务,老手写出来的代码可能会比菜鸟写的代码块几倍,甚 ...

  3. prometheus监控tomcat

    下载tomcat,wget **;解压tar zxvf **; 下载jmx_exporter, wget  https://repo1.maven.org/maven2/io/prometheus/j ...

  4. C++ int型负数除法取余问题

    1:关于除法,不管是正数还是负数都是向0取整的:10/4 = 2,10/(-4) = -2 2:负数取余,通过取模来判定 |小| % |大| = |小| 符号同前    |大| % |小| = |余| ...

  5. SQL查询--内连接、外连接、自连接查询

    先创建2个表:学生表和教师表   1.内连接: 在每个表中找出符合条件的共有记录.[x inner join y on...] 第一种写法:只用where SELECT t.TEACHER_NAME, ...

  6. 使用OC实现单链表:创建、删除、插入、查询、遍历、反转、合并、判断相交、求成环入口

    一.概念 链表和数组都是一种线性结构,数组有序存储的,链表是无序存储的. 数组中的每一个元素地址是递增或者递减的关系,链表的每一个节点的地址没有此规律,它们是通过指针的指向连接起来. 链表种类:单链表 ...

  7. python接口自动化5-session关联

    前言 我们不难发现浏览器中存在着cookie缓存等,但我们在python中如果像浏览器这样的缓存,我们就很难的需要关联cookie或会话了. 但python的requests库,就封装了Session ...

  8. 《细说PHP》第四版 样章 第23章 自定义PHP接口规范 8

    23.5.2  架构详解 本例的实现最重要的就是服务层的设计,有两个配置文件config.php和api.php,其中文件config.php是全局的配置文件,用于整个程序全局需要的参数设置.可以根据 ...

  9. IT兄弟连 Java语法教程 赋值运算符

    从本书之前的内容中就一直在使用赋值运算符.现在是正式介绍赋值运算符的时候了.赋值运算符是单个等号”=“.在Java中,赋值运算符的工作方式与所有其它计算机语言相同.它的一般形式如下: var = ex ...

  10. 跟着高淇学Python——第一到第三章总结

    2019/10/26 第一章:Python介绍 Python是一种解释型,面向对象的语言.特点是: 可读性强 简洁,简洁 面向对象 免费开源 可移植性和跨平台性 丰富的库 可扩展性 应用范围:1.人工 ...