c++ set 解释

65 篇文章 0 订阅

C++中的set是一种基于红黑树实现的有序容器。它存储唯一的元素,并按照元素的键值自动进行排序。set的特点是插入和删除操作的时间复杂度为O(log n),查找操作的时间复杂度也为O(log n)。

set中的元素按照升序排列,且不允许有重复的元素。当需要对元素进行插入、删除和查找操作时,set提供了相应的成员函数,例如insert()、erase()和find()。

set的使用非常简单,只需要包含头文件<set>即可。下面是一个使用set的示例:

#include <iostream>
#include <set>

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

    mySet.insert(5);
    mySet.insert(3);
    mySet.insert(1);
    mySet.insert(4);

    for (auto it = mySet.begin(); it != mySet.end(); ++it) {
        std::cout << *it << " ";
    }
    std::cout << std::endl;

    mySet.erase(3);

    for (auto it = mySet.begin(); it != mySet.end(); ++it) {
        std::cout << *it << " ";
    }
    std::cout << std::endl;

    auto it = mySet.find(4);
    if (it != mySet.end()) {
        std::cout << "Found: " << *it << std::endl;
    } else {
        std::cout << "Not found" << std::endl;
    }

    return 0;
}

运行结果:

1 3 4 5 
1 4 5 
Found: 4

在这个示例中,首先创建了一个名为mySet的set对象。然后使用insert()函数插入了几个整数元素。通过遍历set,可以看到元素被自动排序,并且没有重复项。

接着使用erase()函数删除了值为3的元素。再次遍历set,可以看到元素被重新排序。

最后,使用find()函数查找值为4的元素,并输出结果。

总之,set是C++中有序、唯一的集合容器,它提供了快速插入、删除和查找操作的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值