在C++中,set是一個關聯容器,它包含一組唯一的對象。每個元素在插入時自動按鍵(key)排序。set不支持下標運算符([]),因為元素沒有與其關聯的鍵值。要訪問set中的元素,通常使用迭代器。
以下是一個簡單的示例,展示了如何使用C++的set集合實現數據去重:
#include<iostream>
#include <set>
#include<vector>
int main() {
// 創建一個包含重復元素的向量
std::vector<int> vec = {1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 4, 5, 6, 7, 8, 9};
// 創建一個空的set集合
std::set<int> s;
// 將向量中的元素插入到set集合中,實現去重
for (int num : vec) {
s.insert(num);
}
// 輸出去重后的元素
std::cout << "去重后的元素: ";
for (int num : s) {
std::cout<< num << " ";
}
std::cout<< std::endl;
return 0;
}
在這個示例中,我們首先創建了一個包含重復元素的vector。然后,我們創建了一個空的set集合,并將vector中的元素插入到set集合中。由于set集合中的元素是唯一的,所以重復的元素會被自動刪除。最后,我們輸出去重后的元素。