set的增、删、查

1.增:
(1)插入单个值:
         s.insert(5);
         s.insert(2);
         s.insert(5); // 重复值,插入失败
(2)插入多个值:
         s.insert({1, 3, 4}); // 最终 s: {1,2,3,4,5}
(3)插入迭代器范围(从其他容器/数组插入):
         int arr[] = {6,7};
         s.insert(begin(arr), end(arr)); // s: {1,2,3,4,5,6,7}
2.删:
(1)按值删除(返回删除元素个数,set中只能是0或1):
         size_t delCount = s.erase(3); 
         cout << "删除个数:" << delCount << endl; // 1(删除成功)
(2)按迭代器删除(无返回值):
         auto it = s.find(4);
         if (it != s.end()) {
         s.erase(it); // 删除 4
         }
(3)按迭代器范围删除:
         it = s.find(5);
         s.erase(it, s.end()); // 删除 5、6 → s: {1,2}
(4)清空所有元素:
         s.clear(); // s 变为空
3.查:
(1)find()→ 返回迭代器(找到:指向元素;没找到:s.end())
(2)count() → 返回元素个数(set 中只能是 0 或 1)
(3)遍历查询(按需查找符合条件的元素):
         const auto& val : s
全部评论

相关推荐

点赞 评论 收藏
分享
2025-12-15 11:27
门头沟学院 Java
哇哇的菜鸡oc:所有人不要理会,就好了,后面他就知道怎么回事了,只能说有的时候市场都是被宰的人搞坏的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务