天天看点

STL 的容器

总结一下:

1, array (C++11 feature)

对固定大小数组的一个封装。C++11 的新特性。

2, vector

可动态扩展的数组。只能在尾端动态扩展。在中间的插入与删除操作是 O(n) 。

3,deque

可动态扩展的数组。头与尾都可以动态扩展。在中间的插入与删除操作是 O(n) 。

4,forward_list (C++11 feature)

单链表。

5, list

双链表

6,stack

容器适配器;栈;默认用 deque实现。

template < class T, class Container = deque<T> > class stack;

7,queue

容器适配器;队列;默认用 deque实现。

template < class T, class Container = deque<T> > class queue;

8, priority_queue

容器适配器;优先级队列;默认是用 vector实现的最大堆。

template < class T, class Container = vector<T>,

class Compare = less<typename Container::value_type> > class priority_queue;

9,set, multiset, map, multimap

关联容器;红黑树;

10, hash_map

尚不是标准,在c++11中也没有成为标准。gcc 库中有。哈希表。