本文主要讨论C++标准库中的顺序容器及相应的容器适配器,这些内容主要涉及顺序容器类型:vector、list、deque,顺序容器适配器类型:stack、queue、priority_queue。
标准库中的容器分为顺序容器和关联容器。顺序容器(sequential container)内的元素按其位置存储和访问,顾名思义,这些内部元素是顺序存放的;顺序容器内的元素排列次序与元素值无...
分类:
其他好文 时间:
2016-05-18 17:59:48
阅读次数:
214
转自: Java ArrayList源码剖析 总体介绍 ArrayList实现了List接口,是顺序容器,即元素存放的数据与放进去的顺序相同,允许放入null元素,底层通过数组实现。除该类未实现同步外,其余跟Vector大致相同。每个ArrayList都有一个容量(capacity),表示底层数组的 ...
分类:
编程语言 时间:
2016-05-18 12:30:42
阅读次数:
229
在学C++时接触到顺序容器 list,虽说运用不难,但不懂其实现原理,若想一探其究竟,了解其来龙去脉,链表的学习是必须的。= =若是在高校修行的本科僧,那就更有必要接触了解下了,毕竟数据结构这门课,挂科率还是挺高的(当然是对于吾等菜鸟而言)~ 学习链表,我们得了解如何创建链表,如何给链表添加元素,删 ...
分类:
其他好文 时间:
2016-05-14 12:50:05
阅读次数:
135
STL中容器适配器有stack queue priority_queue共三种。他们都是在顺序容器的基础上实现的,屏蔽了顺序容器的一部分功能,突出或增加了另一些功能。容器适配器都有三个成员函数:push ,pop,top。 1)push:添加一个元素 2)top:返回顶部(对stack)或队头(对q ...
分类:
其他好文 时间:
2016-05-09 22:13:19
阅读次数:
178
STL实践与分析
--引言、pair类型、关联容器
引言:
关联容器与顺序容器的本质差别在于:关联容器通过键[key]来存储和读取元素,而顺序容器则通过元素在容器中的位置顺序的存取元素。
map的元素以键-值【key-value】对的形式组织:键用作元素在map中的索引,而值则表示所存储和读取的数据。
set仅包括一个键,并...
分类:
编程语言 时间:
2016-05-07 11:05:53
阅读次数:
260
A 1)概述 要访问顺序容器,关联容器中的元素就要通过迭代器进行。迭代器是个变量,类似于指针 2)分类 按照定义方式不同可分为四种(iterator, const_iterator, reverse_iterator, const_reverator_iterator) 3)定义 4)例子 ++i比 ...
分类:
其他好文 时间:
2016-05-05 15:56:42
阅读次数:
147
deque(双向队列) 1) * :包含deque头文件 ** :deque也是一个可变长数组,适用于vector的操作都适用于deque ***:对比vector的优势在于在头部存取元素可以在常数时间内完成 2) 它有以下两种vector没有的成员函数 viod push_frond(const ...
分类:
其他好文 时间:
2016-05-05 14:29:13
阅读次数:
117
vector 1) * :使用vector必须包含vector头文件。可变长的动态数组,支持随机访问,所有STL算法都可以对vector进行操作。 ** :随机根据下标访问某个元素的时间是一个常数,尾部添加大多数情况下也是常数,中间插入和删除速度较慢。 2)成员函数 初始化 vector // 创建 ...
分类:
其他好文 时间:
2016-05-05 14:26:21
阅读次数:
128
list(双向链表) 1) * :包含头文件list **:不支持随机存取;增删元素时间是常数,只需要修改指针 2)成员函数 * :vector的成员函数list基本都有 **:以下是部分独有成员函数 sort()算法需要随机访问,故list不支持,所以引入一个成员函数sort() 3)list示例 ...
分类:
其他好文 时间:
2016-05-05 14:18:05
阅读次数:
131
二叉树概述数组、向量、链表都是一种顺序容器,它们提供了按位置访问数据的手段。而很多情况下,我们需要按数据的值来访问元素,而不是它们的位置来访问元素,二叉树在很大程度上解决了这个问题,二叉树是按值来保存元素,也按值来访问元素。二叉树是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树的形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。...
分类:
编程语言 时间:
2016-04-29 18:42:23
阅读次数:
266