c++ set和unordered_set区别

一.set介绍

C++ 中的 set 容器是一种关联容器,用于存储唯一的元素,并能够根据特定的顺序对元素进行排列。在这里,我们将对 set 容器进行详细的分析。

  • 概述

set 容器是 C++标准库中的一个部分,位于 头文件中。它是一个关联容器,意味着每个元素都是唯一的,并且可以根据特定的顺序对元素进行排列。

  • 特点
  1. 唯一性:set 容器中的元素是唯一的,不允许重复。
  2. 有序性:set 容器中的元素是按照特定的顺序排列的,通常是升序或降序。
  3. 关联性:set 容器是关联容器,意味着每个元素都是唯一的,并且可以根据特定的顺序对元素进行排列。
  • 实现

set 容器的实现是基于红黑树(Red-Black Tree)数据结构的。红黑树是一种自平衡的二叉查找树,它能够维护树的平衡,使得查找、插入和删除操作的时间复杂度保持在 O(log n) 级别。

  • 常用操作
  1. 插入:使用 insert 方法将元素插入到 set 容器中。如果元素已经存在,将不会被插入。
set<int> mySet;
mySet.insert(10);
mySet.insert(20);
  1. 遍历:使用迭代器遍历 set 容器中的元素。
for (auto it = mySet.begin(); it != mySet.end()

你可能感兴趣的:(C++相关,c++,set,unordered_set)