摘要: 技术在于交流、沟通,本文为博主原创文章转载请注明出处并保持作品的完整性 本节主要介绍STL六大部件中的Iterators迭代器. 在语言方面讲,容器是一个class template, 算法是一个仿函数, 分配器class template, 迭代器是一个class template, 适配器cla 阅读全文
posted @ 2017-09-24 00:24 WangZijian 阅读(432) 评论(0) 推荐(0) 编辑
摘要: 技术在于交流、沟通,本文为博主原创文章转载请注明出处并保持作品的完整性 unordered_set与与unordered_map相似,这次主要介绍unordered_set unordered_set它的实现基于hashtable,它的结构图仍然可以用下图表示,这时的空白格不在是单个value,而是 阅读全文
posted @ 2017-09-21 00:53 WangZijian 阅读(17328) 评论(0) 推荐(0) 编辑
摘要: 技术在于交流、沟通,本文为博主原创文章转载请注明出处并保持作品的完整性 hash的结构图如下图 oject通过hashfunc转换成hashcode然后插入到相应篮子中 hash同rb_tree是一种底层实现,在实际应用中很少能直接用到,但是做为容器的底层实现,所以了解一下还是很有必要的 hash的 阅读全文
posted @ 2017-09-20 21:31 WangZijian 阅读(539) 评论(0) 推荐(0) 编辑
摘要: 技术在于交流、沟通,本文为博主原创文章转载请注明出处并保持作品的完整性 红黑树,关联式容器底层实现(map set),在使用中基本运用不到,但是还是想了解一下他的运作方式 Red_Black tree是平衡二分搜寻树(balanced binary search tree),它是高度平衡的二叉树,这 阅读全文
posted @ 2017-09-17 00:46 WangZijian 阅读(1027) 评论(0) 推荐(0) 编辑
摘要: 技术在于交流、沟通,本文为博主原创文章转载请注明出处并保持作品的完整性 map与multimap为关联容器,结构如下 map底层实现依然是rb_tree 他的data可以改,但是key不能改,因此map仍然具有自动排序的功能 我们无法使用迭代器改变元素的key(const key),但是可以改变元素 阅读全文
posted @ 2017-09-15 01:05 WangZijian 阅读(12521) 评论(0) 推荐(0) 编辑
摘要: 技术在于交流、沟通,转载请注明出处并保持作品的完整性。 set与multiset关联容器 结构如下 set是一种关联容器,key即value,value即key.它是自动排序,排序特点依据key set的key不能相同.multiset的key相同.关联容器的查找效率要高于顺序容器很多很多. set 阅读全文
posted @ 2017-09-12 23:08 WangZijian 阅读(504) 评论(0) 推荐(0) 编辑
摘要: 技术在于交流、沟通,本文为博主原创文章转载请注明出处并保持作品的完整性。 deque双向开口可进可出的容器 我们知道连续内存的容器不能随意扩充,因为这样容易扩充别人那去 deque却可以,它创造了内存连续的假象. 其实deque由一段一段构成 ,他是分段连续,而不是内存连续 当走向段的尾端时候自动跳 阅读全文
posted @ 2017-08-29 23:38 WangZijian 阅读(22556) 评论(0) 推荐(0) 编辑
摘要: 技术在于交流、沟通,本文为博主原创文章转载请注明出处并保持作品的完整性。 forward_list即单向list,功能少额外开销就小.而且只能在前段插入元素 结构如下 一 定义 #include <forward_list> 二 与迭代器的使用 由于forward_list的迭代器内指向内存不连续 阅读全文
posted @ 2017-08-29 21:24 WangZijian 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 技术在于交流、沟通,本文为博主原创文章转载请注明出处并保持作品的完整性。 list 表示非连续的内存区域,并通过一对指向首尾元素的指针双向链接起来,从而允许向前和向后两个方向进行遍历.在list 的任意位置插入和删除元素的效率都很高. 它的结构 一 定义 头文件 #include <vector> 阅读全文
posted @ 2017-08-27 23:40 WangZijian 阅读(582) 评论(0) 推荐(0) 编辑
摘要: 技术在于交流、沟通,本文为博主原创文章转载请注明出处并保持作品的完整性。 向量容器vector是一个动态数组,内存连续,它是动态分配内存,且每次扩张的原来的二倍. 他的结构如下 一 定义 vector< 类型 > 标识符(最大容量,初始所有值) vector是一种类模板,那么他有很多行为与类相似 头 阅读全文
posted @ 2017-08-25 00:05 WangZijian 阅读(1509) 评论(0) 推荐(0) 编辑