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 來存儲整數,并演示了如何插入元素、遍歷集合以及查找特定元素。