set
是 C++ STL (Standard Template Library) 中的一个非常有用的容器,它包含一组唯一的元素,元素会自动按键排序。set
在内部使用红黑树实现,因此插入、删除和查找操作的时间复杂度都是 O(log n)。
以下是 set
的一些基本用法:
包含头文件:
#include <iostream>
#include <set>
创建一个 set
:
std::set<int> my_set;
向 set
中插入元素:
my_set.insert(5);
my_set.insert(3);
my_set.insert(7);
my_set.insert(3); // 重复元素,不会被插入
删除元素:
my_set.erase(3); // 删除元素 3
检查 set
中是否包含某个元素:
if (my_set.find(3) != my_set.end()) {
std::cout << "Set contains 3" << std::endl;
} else {
std::cout << "Set does not contain 3" << std::endl;
}
遍历 set
:
for (int value : my_set) {
std::cout << value << " ";
}
std::cout << std::endl; // 输出 "5 7"
获取 set
的大小:
std::cout << "Set size: " << my_set.size() << std::endl; // 输出 "Set size: 2"
清空 set
:
my_set.clear();
std::cout << "Set size after clearing: " << my_set.size() << std::endl; // 输出 "Set size after clearing: 0"
这些只是 set
的基本用法,你还可以使用其他成员函数和操作符来处理 set
。更多关于 set
的信息,可以查看 C++ STL 文档。