【笔记】STL的七种武器(一)关联容器

参考资料:

 

 

0.关联容器与顺序容器的区别

  关联容器中的元素是按关键字来保存和访问的。而顺序容器中的元素是按它们在容器中的位置来顺序保存和访问的。
  关联容器支持高效的关键字查找与访问。两个主要的关联容器类型是map与set。

 

1.红黑树

(1)定义:

  节点非红即黑;根节点黑色;空节点为叶子,叶子为黑;红节点孩子必为黑;从根到任意叶子,经过的黑节点数相等。

(2)除了红节点,树为满树

 

2.set / mutiset

(1)   set无重复元素,插入的元素自动按增序排列。内部实现: 红黑树。multiset允许重复元素

(2)  主要的功能就是判重,也可以进行二分查找。set与map的查找、删除、插入性能都是对数复杂度。

(3)操作:

  set<int> s;
  s.insert(2);   s.erase(2);   s.clear();
  set<int>::iterator rit;
  for(it=s.begin() ; it!=s.end() ; it++ )
  it=s.find(5); //查找键值为5的元素

(4)重载运算符

struct myComp
{
    bool operator < (const your_type &a,const your_type &b)
    {    return a.data-b.data>0;    }
}
set<int,myComp>s;
set<int,myComp>::iterator it;

 

是的我今天仍旧没有看完...

15号接着看吧...其他算法也没看光stl花了两天学不完...阿西吧快开学了好焦虑

 

上一篇:PostgreSQL 10.1 手册_部分 III. 服务器管理_第 31 章 逻辑复制_31.1. 发布


下一篇:Codeforces Round #767 (Div. 2) C D