(4条消息) C++常用数据结构总结_W.J.Z-CSDN博客_c++数据结构有哪些
array数组
- 内存空间为连续的一段地址,适用于提前已知所要存储的数据类型和数量、进行大量的查、改操作,
- 不适用于含有大量交换、删除、增加数据的操作,该容器无法动态改变大小,所以说提前已知存储数据类型和数量。
vector向量
- vector向量和array不同,它可以根据数据的大小而进行自动调整
list 链表
- 链表在内存结构上为链式结构,也就决定它可以动态增加,适用于包含大量增加、删除的应用,
- List有一个重要的性质,插入操作和删除操作都不会造成原有list迭代器的失效,这在vector是不成立的。
- 不适用于包含大量查询的操作,
map
- map为关联式容器,提供一对一服务,每个关键字在容器中只能出现一次,适用于一对一服务。
set 集合
- set集合最大的特点是里面的元素按序排列不重复
queue队列
- 该容器内存结构最好为链式结构,最知名的特点是先进先出,能动态调整大小,适用于包含大量增、删操作的情况,
- 不适用于含有大量查找操作的数据。
stack 栈
- 栈在内存上可为连续或者链式,于队列相反的是它为先进后出,适用于压栈出栈操作,