数据结构1-1 (线性表)
本文是介绍关于线性表的基础知识,以及其STL vector的使用。
线性表的概念
线性表是一种最基本的连续的存储数据的方式,线性表通常也可以看作是一维数组,即连续存储的信息。
线性表的基本模型
线性表的基础是计算机连续的内存单元,将信息存放在连续的内存单元以实现的基本的存储功能。线性表可以看作是一根数轴。
如下图:
通常采用数组作为基本的线性表。
int a[MAXN];
线性表的功能
线性表作为数据最基本的存储形式,是我们可以直接将操作作用于数据的方法,也是数据在内存中所呈现的基本结构。
我们可以直接对线性表中内容进行运算、输入、输出等。
STL vector
C++ STL 中的vector与array是线性表的容器,但是array作为定长数组使用上相较于变长的vector较为死板。
创建一个vector:
vector<int> a;
STL vector函数
函数功能 | 函数名 | 返回值 |
---|---|---|
获得起始迭代器 | begin() | iterator |
获得末尾迭代器 | end() | iterator |
线性表元素个数 | size() | int |
线性表的容量 | capacity() | int |
判断是否为空 | empty() | bool |
在表的最后位置插入元素 | push_back(template T) | void |
在某位置插入元素 | insert(iterator,template T) | void |
删除某位置元素 | erase(iterator) | void |
清空所有元素 | clear() | void |