十一、数组和广义表
(一)、数组的基本概念
数组除了初始化和销毁以外,在数组中通常只有下面两种操作。
- 读操作:给定一组下标,读取相应的数组元素。
- 写操作:给定一组下标,存储或者修改相应的数组元素。
几乎所有的计算机高级语言都实现了数组数据结构,并称之为数组类型。这里以 C/C++语言为例,其中数组数据类型具有以下性质:
- 数组中的数据元素数目固定,一旦定义了一个数组,其数据元素数目不再有增减的变化。
- 数组中的数据元素具有相同的数据类型。
- 数组中的每个数据元素都和一组唯一的下标对应。
- 数组是一种随机存储结构,可随机存取数组中的任意数据元素。
因此,用户可以在C/C++程序中直接使用数组来存放数据,并使用数组的运算符来完成相应的功能。
(二)、数组的存储类型
数组特别适合采用顺序存储结构:将数组所有元素存储在一块地址连续的内存单元中。
- 一维数组
dataType a[n];
//其中dataType为数据类型,如int型
- 二维数组
dataType a[m][n];
//其中dataType为数据类型,如int型
- 行优先存储
- 列优先存储
- 求下标