C++ set用法总结

2024-01-07 17:36:31

std::set 是 C++ 标准库中的关联容器之一,它实现了一种有序的、不包含重复元素的集合。以下是 std::set 的用法总结:

包含头文件:

#include <set>

创建 std::set 对象:

std::set<ElementType> mySet;
  • ElementType 是集合中元素的类型。

插入元素:

mySet.insert(element);

删除元素:

mySet.erase(element);

查找元素:

auto it = mySet.find(element);

if (it != mySet.end()) {
    // 元素找到
} else {
    // 元素未找到
    // 处理不存在的情况
}

遍历 std::set

for (const auto& element : mySet) {
    // 处理每个元素
}

获取大小:

size_t size = mySet.size();

检查是否为空:

bool isEmpty = mySet.empty();

注意事项:

  1. std::set 中的元素是按升序排序的,且不允许重复元素。
  2. std::set 的底层实现是基于红黑树的。

示例:

#include <iostream>
#include <set>

int main() {
    std::set<int> mySet;

    // 插入元素
    mySet.insert(3);
    mySet.insert(1);
    mySet.insert(4);
    mySet.insert(2);

    // 遍历 set
    for (const auto& element : mySet) {
        std::cout << element << " ";
    }
    std::cout << std::endl;

    // 删除元素
    mySet.erase(3);

    // 查找元素
    auto it = mySet.find(2);
    if (it != mySet.end()) {
        std::cout << "Element 2 found." << std::endl;
    } else {
        std::cout << "Element 2 not found." << std::endl;
    }

    return 0;
}

这是一个简单的使用 std::set 的例子。std::set 是一个非常有用的容器,尤其适用于需要有序、不允许重复元素的场景。

文章来源:https://blog.csdn.net/weixin_45055461/article/details/135429534
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。