14.map、set是怎么实现的,红黑树是怎么能够同时实现这两种容器? 为什么使用红黑树?

14.map、set是怎么实现的,红黑树是怎么能够同时实现这两种容器? 为什么使用红黑树?

1.他们的底层都是以红黑树的结构实现,因此插入删除等操作都在O(lgn)时间内完成,因此可以完成高效的插入删除;

2.在这里我们定义了一个模版参数,如果它是key那么它就是set,如果它是map,那么它就是map;底层是红黑树,实现map的红黑树的节点数据类型是key+value,而实现set的节点数据类型是value

3.因为map和set要求是自动排序的,红黑树能够实现这一功能,而且时间复杂度比较低。

posted @   CodeMagicianT  阅读(52)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示