c++ set和vector
时间: 2024-01-11 19:22:35 浏览: 30
C++中的set和vector是两种常用的容器类型。
1. set是一个有序的容器,其中的元素按照一定的规则进行排序,并且不允许重复元素的存在。set的实现是基于红黑树的,因此插入、删除和查找操作的时间复杂度都是O(log n)。下面是一个set的简单示例代码:
```cpp
#include <iostream>
#include <set>
using namespace std;
int main() {
set<int> s;
s.insert(10);
s.insert(20);
s.insert(30);
for (auto it = s.begin(); it != s.end(); it++) {
cout << *it << " ";
}
return 0;
}
```
输出结果为:10 20 30
2. vector是一个动态数组,可以在末尾快速添加和删除元素。vector的实现是基于数组的,因此插入和删除操作的时间复杂度为O(n),查找操作的时间复杂度为O(1)。下面是一个vector的简单示例代码:
```cpp
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> v;
v.push_back(10);
v.push_back(20);
v.push_back(30);
for (int i = 0; i < v.size(); i++) {
cout << v[i] << " ";
}
return 0;
}
```
输出结果为:10 20 30