网站备案 接入商名称,网站建设:化工,软件开发的一般流程是什么,阿里建站服务蓝桥杯基础知识7 vector vector 的定义和特性#xff1a;在C中#xff0c;vector是一个动态数组容器#xff0c;可以存储一系列相同类型的元素。 vector 是一个模板类#xff0c;使用之前包含头文件vector#xff0c;声明一个vector对象vec#xff0c;T是存储在v…蓝桥杯基础知识7 vector vector 的定义和特性在C中vector是一个动态数组容器可以存储一系列相同类型的元素。 vector 是一个模板类使用之前包含头文件vector声明一个vector对象vecT是存储在vector中的元素类型。 std::vectorT vec; 容器大小vector 是一个动态数组根据需要自动调整大小根据元素的数量动态分配内存空间。 元素访问通过索引访问 vector 中的元素索引从0开始最后一个索引是 size() - 1可以使用[]运算符或 at() 函数来访问元素。 元素添加和删除push_back() 函数在vector的末尾添加元素pop_back()函数删除末尾元素insert() 函数在指定位置插入元素erase() 函数删除指定位置的元素。 容器大小管理size() 函数获取 vector 中元素数量empty() 函数检查 vector 是否为空resize() 函数调整 vector 大小。 迭代器vector 提供迭代器可遍历容器中的元素begin() 函数获取指向第一个元素的迭代器end() 函数获取指向最后一个元素的迭代器。 02 vector 的常用函数 push_back()将元素添加到 vector 末尾。
void push_back(const T value);pop_back()删除 vector 末尾元素。
void pop_back();
begin() 和 end()返回指向vector 第一个元素 和 最后一个元素之后位置的迭代器。
std::vectorint vec {10, 20, 30};
for (auto it vec.begin(); it ! vec.end(); it) { // 迭代器不能写 it 1std::cout *it ;
}
iterator begin();
const_iterator begin() const;
iterator end();
const_iterator end() const; 03 vector 排序去重 #includealgorithmstd::vectorT vec {...};
std::sort(vec.begin(), vec.end()); 排序对 vector 排序使用标准库中的 std::sort 函数。 函数头文件algorithmT是 vector 元素类型
std::sort 函数接受两个迭代器参数表示排序范围。 vec.begin() 返回指向 vector 第一个元素的迭代器
vec.end() 指向最后一个元素之后位置的迭代器。 03 vector 排序去重 去重去除 vector 中重复元素使用 std::unique 函数。 #includealgorithmstd::vectorT vec {...};
std::sort(vec.begin(), vec.end());
auto last std::unique(vec.begin(), vec.end());
vec.erase(last, vec.end());
对 vector 排序方便相同的元素排到相邻的位置std::unique 函数将重复元素移到 vector 末尾并返回指向第一个重复元素的迭代器使用 vec.erase 函数将重复元素删除。 #includeiostream
#includevector
#includealgorithmint main(){std::vectorint vec {2, 1, 3, 2, 4, 1, 5, 4};std::sort(vec.begin(), vec.end());auto last std:: unique(vec.begin(), vec.end());vec.erase(last, vec.end());for(const auto num : vec){ // 1 2 3 4 5std::cout num ;}return 0;
} 可结合学习 蓝桥杯基础知识5 unique-CSDN博客 C vector的用法整理-CSDN博客 C vector 容器浅析 | 菜鸟教程 (runoob.com)