01 vector的定义和特性
02 vector的常用函数
03 vector排序去重
示例:
csharp
#include<bits/stdc++.h>
using namespace std;
int main(){
vector<int> vec ={5,2,8,1,9};
sort(vec.begin(),vec.end());
for(const auto& num : vec){
cout<<num<<" ";
}
return 0;
}
输出:
示例:
csharp
#include<bits/stdc++.h>
using namespace std;
int main(){
vector<int> vec={2,1,3,2,4,1,5,4};
sort(vec.begin(),vec.end());
auto last =unique(vec.begin(),vec.end());
vec.erase(last,vec.end());
for(const auto& num : vec){
cout<<num<<" ";
}
return 0;
}
输出:
这样,vector中的重复元素被去除,只保留了不重复的元素。
04 代码示例
csharp
#include<bits/stdc++.h>
using namespace std;
int main(){
//创建一个空的vector对象
vector<int> numbers;
//向向量中添加元素
numbers.push_back(5);
numbers.push_back(2);
numbers.push_back(8);
numbers.push_back(5);
numbers.push_back(1);
numbers.push_back(2);
numbers.push_back(9);
numbers.push_back(8);
//打印向量中的元素
cout<<"原始向量中的元素: ";
for(const auto& number : numbers){
cout<<number<<" ";
}
cout<<endl;
//对向量进行排序
sort(numbers.begin(),numbers.end());
//打印排序后的向量
cout<<"排序后的向量: ";
for(const auto& number : numbers){
cout<<number<<" ";
}
cout<<endl;
//去除重复元素
numbers.erase(unique(numbers.begin(),numbers.end()));
//打印去重后的向量
cout<<"去重后的向量:";
for(const auto& number : numbers){
cout<<number<<" ";
}
cout<<endl;
//向向量中插入元素
numbers.insert(numbers.begin()+2,3);
//打印插入元素后的向量
cout<<"插入元素后的向量: ";
for(const auto& number : numbers){
cout<<number<<" ";
}
cout<<endl;
//检验向量是否为空
if(numbers.empty()){
cout<<"向量为空"<<endl;
}else{
cout<<"向量不为空"<<endl;
}
//获取向量的大小
cout<<"向量的大小:"<<numbers.size()<<endl;
//清空向量
numbers.clear();
if(numbers.empty()){
cout<<"向量为空"<<endl;
}else{
cout<<"向量不为空"<<endl;
}
return 0;
}