13.mutiset树每一个结点都是一个链表的指针,可以存储相同的数据

本文介绍了一个使用C++标准库中的multiset来实现红黑树的例子。通过插入重复元素并遍历multiset展示其内部红黑树结构的自平衡特性。此外,还演示了如何使用find和equal_range成员函数来查找特定元素。
 1 #include <iostream>
 2 //红黑树(自动保证平衡,自动生成平衡查找树)
 3 #include <set>
 4 #include <cstring>
 5 #include <cstdlib>
 6 using namespace std;
 7 
 8 
 9 void main()
10 {
11     //红黑树,每一个结点都是一个链表的头结点
12     multiset<int> myset{ 1,2,3,3,3,3,4 };
13     myset.insert(101);
14     myset.insert(101);
15 
16     for (auto i : myset)
17     {
18         cout << i << endl;
19     }
20 
21     //找到一个
22     auto ifind = myset.find(101);
23 
24     //找到所有
25     auto it = myset.equal_range(3);
26     //输出类型
27     //cout << typeid(it).name() << endl;
28 
29     //类型是pair  first是起点,second是终点
30     for (auto i = it.first; i != it.second; i++)
31     {
32         cout << *i << endl;
33     }
34 
35     cin.get();
36 }

 

转载于:https://www.cnblogs.com/xiaochi/p/8627453.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值