21xrx.com
2024-06-03 04:18:15 Monday
登录
文章检索 我的文章 写文章
C++中的向量(Vector)用法和排序
2023-07-09 05:06:20 深夜i     --     --
C++ 向量 Vector 用法 排序

向量(vector)是C++ STL容器的一种,它是由一系列的连续空间来存储元素的,支持随机访问和动态扩容,可以在尾部快速添加或删除元素。它的用法十分灵活,在开发中应用广泛。

向量的定义和初始化

向量的定义需要包含头文件 ,语法如下:

vector<元素类型> 向量名;

例如:

vector vec; //定义一个int类型的vector

一个向量还可以使用初始化列表进行初始化,例如:

vector vec = 2;

向量常用操作

在向量中,使用push_back()方法往向量末尾添加一个元素,用pop_back()方法删除末尾的元素,使用size()方法获取向量中元素的个数,使用empty()方法查看向量是否为空,方法如下:

// 添加元素

vec.push_back(6);

// 删除元素

vec.pop_back();

// 获取元素个数

int len = vec.size();

// 判断是否为空

bool is_empty = vec.empty();

// 通过下标访问元素

int num = vec[0];

// 清空向量

vec.clear();

向量的排序

在实际应用中,我们经常需要将向量中的元素进行排序,以便于后续的处理。C++ STL提供了sort()方法来对向量进行排序。sort()方法接受两个迭代器作为参数,表示要排序的区间。

sort(vec.begin(), vec.end());

sort()方法还可以接受第三个参数,即比较函数,这里我们就可以按照自己的需求来比较元素大小,比如在容器中存储的是对象,可以根据对象的一个属性进行排序,方法如下:

bool compare(Student stu1, Student stu2)  

  return stu1.score < stu2.score;  

sort(vec.begin(), vec.end(), compare);

总结

向量是C++ STL中的一种常用的容器。它支持随机存储和动态扩容等特性,常用于存储一些需要频繁进行添加和删除的数据结构。在实际应用中,我们还可以使用sort()方法对向量中的元素进行排序,提高后续处理的效率。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复