STL 三种顺序容器的特性对比: vector 可变数组,内存空间是连续的,容量不会进行缩减。支持高效随机存取,即支持[]和at()操作。尾部插入删除效率高,其他位置插删效率较低; list 双向链表,内存空间可不连续,不支持随机存取。插入和删除的效率很高; deque 双端队列,内存空间是多个连续 ...
分类:
编程语言 时间:
2019-01-19 13:22:37
阅读次数:
171
LinkedList也像ArrayList一样实现了基本的List接口,但是它执行某些操作(在List的中间插入和移除)时比ArrayList更高效,但在随机访问方面却要逊色一些 LinkedList还添加了可以使其用作栈,队列或双端队列的方法 这些方法有些彼此之间只是名称有差异,或者只是存在些许差 ...
分类:
编程语言 时间:
2019-01-12 22:50:21
阅读次数:
187
一、deque介绍: deque(双端队列)是一个动态数组,可以向两端发展,因此不论在尾部或头部安插元素都十分迅速。 在中间部分安插元素则比较费时,因为必须移动其它元素。 二、用法 1、头文件 2、定义及初始化 除此之外,还可以直接使用数组来初始化向量: 3、基本操作 (1) 容量函数 容器大小: ...
分类:
编程语言 时间:
2019-01-12 17:56:16
阅读次数:
184
1. 堆栈 2. 队列 3. 双端队列 4. 优先级队列 5. 单向链表 6. 双向链表 ...
分类:
编程语言 时间:
2019-01-04 21:23:48
阅读次数:
209
一:List了解 (一)List:列表 (二)List:主要实现 同步/非同步:针对线程而言 二:ArrayList:数组实现 (一)ArrayList了解 (二)ArrayList实现 迭代器遍历 3121066iterator使用纳秒:825476 index索引遍历 3121066index使 ...
分类:
编程语言 时间:
2019-01-04 12:34:04
阅读次数:
202
题解: 把n凸边型转化为n条边后 等价于给出k条直线,让你求直线左边区域的交 然后大概步骤是 首先要给边排序,按照极角从-pai开始逆时针排序 另外平行边我们只需要保留那条约束条件更强的 维护一个双端队列 加点之后判断$(p[h],p[h+1])$的交点$(p[t-1],p[t])$的交点是否在当前 ...
分类:
其他好文 时间:
2019-01-01 23:54:45
阅读次数:
208
目录 非阻塞队列 阻塞队列 双端队列 非阻塞队列(AbstractQueue) 队列介绍 1 ConcurrentLinkedQueue 先进先出队列 2 PriorityQueue 非并发的优先队列 非阻塞队列方法 1 add(E e) 将元素e插入队列末尾,如果插入成功,返回true;如果插入失 ...
分类:
其他好文 时间:
2018-12-24 00:01:20
阅读次数:
129
`atan2(y,x)`的值域是$( \pi,\pi]$,返回相当于$x+yi$的幅角。 半平面交维护的是点集,用双端队列维护。 时间复杂度为排序的$O(n \log n)$ cpp include include include include include include include in ...
分类:
其他好文 时间:
2018-12-23 15:34:31
阅读次数:
129
C++语言 基础算法 位运算 快速幂 模拟 枚举 递推 递归 分治 二分 三分 排序 归并排序 离散化 倍增 贪心 高精度 数据结构 前缀和 差分 栈 对顶栈 单调栈 队列 双端队列 循环队列 单调队列 ST表 链表 链式前向星 Hash表 二叉堆 Huffman树 并查集 路径压缩 按秩合并 扩展 ...
分类:
其他好文 时间:
2018-12-23 15:22:40
阅读次数:
465
概要 前面,我们已经学习了ArrayList,并了解了fail-fast机制。这一章我们接着学习List的实现类——LinkedList。和学习ArrayList一样,接下来呢,我们先对LinkedList有个整体认识,然后再学习它的源码;最后再通过实例来学会使用LinkedList。内容包括:第1 ...
分类:
编程语言 时间:
2018-12-19 01:13:08
阅读次数:
258