stl
青阳不会被占用
stay hungry,stay foolish
展开
-
C++ map和multimap的键查找和值查找以及删除操作
C++的map和multimap本质都是排序的平衡二叉树。其中不同的点在于map——key是唯一的。multimap——key是不唯一的。另外需要提及的一点是它们的删除操作,在删除某个迭代器的时候会导致迭代器失效。下面的代码主要介绍几个特殊的查找函数:find——已知key查找map或者multimap中的第一个满足条件的值。find_if——已知起始迭代器,终止迭代器,bool表达式的第一个满足表达式的值。(该函数来自algorithm包)lower_bound——已知key,查找>原创 2021-02-04 11:07:51 · 2190 阅读 · 0 评论 -
C++中常见stl关联容器的比较
关联容器c++11标准库中主要介绍了以下8种关联容器,其区别如下:set与multiset(有序,节点只存一个值)实现:平衡二叉树。优点:自动排序使得查找有良好性能。缺点:不能直接改变元素值,改变树则乱。set与multiset的区别:前者每一个元素只能出现一次,不允许重复;后者元素可以重复。map与multimap(有序,key/value可以任意)实现:平衡二叉树。优点:自动...原创 2019-05-05 21:35:23 · 409 阅读 · 0 评论