vector的定义和特征
- 动态数组容器
- 存储一系列相同类型的元素
- 标准库
<vector>
中定义的模板类
声明
- 加头文件
<vector>
vector<T> vec;
T☞元素类型
- 容器大小:动态数组可以自己调节
- 元素访问:通过索引来访问vector中的元素,索引从0开始,到size()-1.可以使用[]运算符或at()函数来访问元素
- 元素的添加和删除:可以使用push_back()函数再vector的末尾添加元素,使用pop_back()函数删除末尾元素insert()函数在指定位置插入元素,erase()函数删除指定位置的元素
- 容器大小管理:可以使用size()函数获取vector中元素的数量,使用empty()函数检查vector是否为空.还可以使用resize()函数调整vector的大小.
- 迭代器:vector提供了迭代器,可以用于遍历容器中的元素.begin()函数获取指向第一个元素的迭代器,使用end()函数获取指向最后一个元素之后位置的迭代器.
vector的常用函数
- 容器大小:动态数组可以自己调节
- 元素访问:通过索引来访问vector中的元素,索引从0开始,到size()-1.可以使用[]运算符或at()函数来访问元素
- 元素的添加和删除:可以使用push_back()函数再vector的末尾添加元素,使用pop_back()函数删除末尾元素insert()函数在指定位置插入元素,erase()函数删除指定位置的元素
- 容器大小管理:可以使用size()函数获取vector中元素的数量,使用empty()函数检查vector是否为空.还可以使用resize()函数调整vector的大小.
- 迭代器:vector提供了迭代器,可以用于遍历容器中的元素.begin()函数获取指向第一个元素的迭代器,使用end()函数获取指向最后一个元素之后位置的迭代器.
vector排序去重
排序sort
去重unique
代码示例
#include<bits/stdc++.h>
using namespace std;
int main()
{
vector<int> num;
num.push_back(5);
num.push_back(6);
num.push_back(7);
num.push_back(9);
num.push_back(2);
num.push_back(1);
num.push_back(3);
num.push_back(4);
cout << "原始向量中的元素:";
for (const auto& num : num){
cout << num <<" ";
}
cout << endl;
sort(num.begin(),num.end());
cout << "排序后的向量:";
for (const auto& num : num){
cout << num <<" ";
}
cout << endl;
cout << "去重后的向量:";
for(const auto& num : num){
cout << num <<" ";
}
cout << endl;
num.insert(num.begin() + 2,3);
cout << "插入元素后的向量:";
for(const auto& num : num){
cout << num <<" ";
}
cout << endl;
num.erase(num.begin() + 4);
cout << "删除元素后的向量:";
for(const auto& num : num){
cout << num <<" ";
}
cout << endl;
if(num.empty()){
cout << "向量为空" << endl;
}else{
cout << "向量不为空"<< endl;
}
cout << "向亮的大小:" << num.size() << endl;
num.clear();
if(num.empty()){
cout << "向量为空" << endl;
}else{
cout << "向量不为空" << endl;
}
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具