C/C++ STL提供的关联式容器之set

2023-12-17 10:27:41

set(集合)顾名思义,就是数学上的集合 —— 每个元素最多只出现一次,并且 set 中的元素已经从小到大排好序。

特点
?? ?1. 使用红黑树实现,其内部元素依据其值自动排序,每个元素值只能出现一次,不允许重复。
?? ?2. 每次插入值的时候,都需要调整红黑树,效率有一定影响。(缺点)
?? ?3. map 和 set 的插入或删除效率比用其他序列容器高,因为对于关联容器来说,不需要做内存拷贝和内存移动。(优点)

总结:由红黑树实现,其内部元素依据其值自动排序,每个元素值只能出现一次,不允许重复,且插入和删除效率比用其他序列容器高。

示例源码:

// Len_stl.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>
#include <set>
using namespace std;

int main()
{
	set<int> setTemp;

	setTemp.insert(33);
	setTemp.insert(11);
	setTemp.insert(22);
	setTemp.insert(11);  // 当插入重复的数据的时候,不会重复插入

	set<int>::iterator it;
	cout << "遍历set容器" << endl;
	for (it = setTemp.begin(); it != setTemp.end(); it++)
	{
		cout << *it << endl;
	}

	return 0;

}

执行结果:

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