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

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

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

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

示例源码:

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

#include 
#include 
using namespace std;

int main()
{
	set setTemp;

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

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

	return 0;

}

执行结果:

C/C++ STL提供的关联式容器之set_第1张图片

你可能感兴趣的:(C/C++学习,c语言,c++,开发语言)