1、List、Vector、deque与ArrayList、LinkedList
stl提供了三个最基本的容器:vector,list,deque。
vector和built-in数组类似,即底层是数组数据结构,线程同步,然而现今被ArrayList代替了,已经很少用了。它拥有一段连续的内存空间,并且起始地址不变,因此它能非常好的支持随即存取,即[]操作符...
分类:
其他好文 时间:
2016-04-29 16:45:42
阅读次数:
208
jdk:1.7.0_75
package java.util;
/**
* Doubly-linked list implementation of the {@code List} and {@code Deque}
* interfaces. Implements all optional list operations, and permits all
* elements (i...
分类:
其他好文 时间:
2016-04-29 16:40:05
阅读次数:
212
#ifndef _HJSTL_DEQUE_H_
#define _HJSTL_DEQUE_H_
/*
* Author:hujian
* Time:2016/4/28
* discription:this file is about deque structure.
*
*/
#include "hjstl_alloc.h"
#include "hjstl_construct.h...
分类:
其他好文 时间:
2016-04-29 15:55:19
阅读次数:
218
1 序列解压:通过*来通配 *a, b = somelist, first, *mid, last = somelist, a, *b = somelist 2 使用双向队列: from collections import deque q = deque(maxlen=5) 可以固定长度 q = ...
分类:
编程语言 时间:
2016-04-28 01:51:44
阅读次数:
236
我们常用到的STL容器有vector、list、deque、map、multimap、set和multiset,它们究竟有何区别,各自的优缺点是什么,为了更好的扬长避短,提高程序性能,在使用之前需要我们了解清楚。 verctor vector类似于C语言中的数组,它维护一段连续的内存空间,具有固定的 ...
分类:
编程语言 时间:
2016-04-26 19:05:50
阅读次数:
217
STL中经常使用的数据结构: [1] stack、queue默认的底层实现为deque结构。 [2] deque:用map管理多个size大小的连续内存块,方便头尾插入。 [3] vector:变长动态数组。每次增大1.5倍,删除元素时不释放空间。 [4] priority_queue底层默认採用v ...
分类:
其他好文 时间:
2016-04-22 18:12:31
阅读次数:
168
1. LinkedList简介 LinkedList 是一个继承于AbstractSequentialList的双向链表。它也可以被当作堆栈、队列或双端队列进行操作。LinkedList 实现 List 接口,能对它进行队列操作。LinkedList 实现 Deque 接口,即能将LinkedLis ...
分类:
编程语言 时间:
2016-04-21 16:37:39
阅读次数:
295
LinkedList简介 (1)基于双向循环链表的结构,实现了Deque接口,可以用作堆栈、队列或双端队列使用; (2)实现为非同步的,即在多线程下是不安全的,单线程安全; (3)实现了Cloneable、Serializable,可以克隆与被序列化; JDK1.7-LinkedList源码详细分析 ...
分类:
其他好文 时间:
2016-04-21 16:34:41
阅读次数:
246
STL提供六大组件,彼此可以组合套用 1、容器(containers):各种数据结构,如vertor,list,deque,set,map.从实现的角度来看,STL容器是一种class template 2、算法(algorithms):各种算法如sort,search,copy,earse。STL ...
分类:
编程语言 时间:
2016-04-18 08:49:01
阅读次数:
259