C++ 中的 set 是一种关联容器,它包含一组唯一的对象。set 中的元素在插入时自动按键排序。键是元素本身,它们在 set 中不能重复,并且不允许有重复的键。set 通常用于存储已经排序的数据集合,以便可以快速查找、插入和删除元素。
以下是 set 的一些常见用途:
set。例如,你可以使用 set 来存储一个项目的所有唯一标签或名称。set 中的元素在插入时会自动按键排序。这使得 set 成为一种有用的数据结构,可以方便地按顺序访问元素。set 中的元素是唯一的,因此查找特定元素的时间复杂度为 O(log n),其中 n 是 set 中元素的数量。这比线性查找(如 vector 或 list)更快。<set> 头文件提供了许多有用的集合运算,如并集、交集、差集和对称差集。这些运算可以方便地处理 set 中的元素。下面是一个简单的示例,展示了如何使用 set:
#include <iostream>
#include <set>
int main() {
std::set<int> mySet;
// 插入元素
mySet.insert(5);
mySet.insert(3);
mySet.insert(7);
mySet.insert(3); // 重复元素,不会被插入
// 遍历集合
for (int num : mySet) {
std::cout << num << " ";
}
std::cout << std::endl;
// 查找元素
if (mySet.find(7) != mySet.end()) {
std::cout << "Found 7 in the set." << std::endl;
}
return 0;
}
输出:
3 5 7
Found 7 in the set.
在这个示例中,我们创建了一个 set 来存储整数,并演示了如何插入元素、遍历集合以及查找特定元素。