[zz]std::vector,std::deque,std::list的区别的使用

vector    表示一段连续的内存区域,每个元素被顺序存储在这段内存中,对vector的随机访问效率很高,但对非末尾元素的插入和删除则效率非常低。

deque    也表示N段连续的内存区域组成,但与vector不同的是它支持高效地在其首部插入和删除元素,它通过两级数组结构来实现,一级表示实际的容器,第二级指向容器的首和尾  

list    表示非连续的内存区域并通过一对指向首尾元素的指针双向链接起来,插入删除效率高,随机访问效率低(从名字上可以很容易理解它为链表结构)

可以看做 deque 为vector 和 list 的折衷

posted @ 2012-04-22 15:52  zaleilynn  阅读(351)  评论(0编辑  收藏  举报