21xrx.com
2025-03-30 01:55:34 Sunday
文章检索 我的文章 写文章
C++ Set(集合)
2023-07-07 20:33:34 深夜i     24     0
C++ Set 集合 数据结构 编程语言

Set(集合)是C++ STL(标准模板库)中的一种容器,它可以存储一组不重复的元素。与其他容器不同,Set中的元素是自动按照从小到大的顺序排列的,并且不能修改。

定义Set需要包含头文件 ,并使用Set数据类型声明变量。Set支持插入、查找、删除等操作,其中插入操作可以使用insert()方法实现,查找可以使用find()方法实现,删除可以使用erase()方法实现。

具体来说,我们可以通过插入元素的方式创建Set对象,并通过迭代器访问Set中的元素。例如,以下代码展示如何创建一个Set对象,插入元素并访问它们:

#include <iostream>
#include <set>
using namespace std;
int main() {
  set<int> mySet;
  mySet.insert(3);
  mySet.insert(2);
  mySet.insert(1);
  for (auto i = mySet.begin(); i != mySet.end(); i++) {
    cout << *i << " ";
  }
  return 0;
}

输出将是1 2 3,这是因为Set自动对元素进行排序,并确保它们不重复。

另一个常用的Set方法是erase(),它可以删除Set中的元素。以下代码展示如何使用erase()方法删除Set中的指定元素:

#include <iostream>
#include <set>
using namespace std;
int main() {
  set<int> mySet;
  mySet.insert(3);
  mySet.insert(2);
  mySet.insert(1);
  mySet.erase(2);
  for (auto i = mySet.begin(); i != mySet.end(); i++) {
    cout << *i << " ";
  }
  return 0;
}

输出将是1 3,因为我们删除了Set中的数字2。

Set还有其他方法可供使用,如size()、empty()、clear()等。它们也非常有用,并可以帮助我们更好地操作Set对象。

总而言之,Set是一种非常有用的C++容器,可以存储不重复的元素并确保它们自动排序。无论是在数据处理还是算法设计中,Set都是一个可以大力推广使用的工具。

  
  

评论区

请求出错了