C++ 中的 set
是一種關聯容器,它包含一組唯一的對象。set
中的元素在插入時自動排序,并且不允許重復。以下是一些常用的 set
操作:
insert()
方法將元素插入到 set
中。std::set<int> mySet;
mySet.insert(10);
mySet.insert(20);
mySet.insert(30);
erase()
方法從 set
中刪除元素。mySet.erase(20); // 刪除元素 20
find()
方法查找 set
中的元素。如果找到了元素,則返回指向該元素的迭代器;否則返回指向 set
中的尾部元素的迭代器。auto it = mySet.find(30);
if (it != mySet.end()) {
std::cout << "Found: " << *it << std::endl;
} else {
std::cout << "Not found" << std::endl;
}
set
中的所有元素。for (auto it = mySet.begin(); it != mySet.end(); ++it) {
std::cout << *it << " ";
}
std::cout << std::endl;
count()
方法檢查 set
中是否存在指定元素。如果存在,則返回 1;否則返回 0。if (mySet.count(20) > 0) {
std::cout << "20 exists in the set" << std::endl;
} else {
std::cout << "20 does not exist in the set" << std::endl;
}
size()
方法獲取 set
中元素的數量。std::cout << "Set size: " << mySet.size() << std::endl;
clear()
方法清空 set
中的所有元素。mySet.clear();
empty()
方法檢查 set
是否為空。如果為空,則返回 true
;否則返回 false
。if (mySet.empty()) {
std::cout << "Set is empty" << std::endl;
} else {
std::cout << "Set is not empty" << std::endl;
}