《数据结构》(严蔚敏 吴伟民)学习笔记 - 第五章 数组和广义表

数组和广义表可以看成是线性表的一个扩展,表中的数据元素本身也是一个数据结构。

1、数组的定义

数组的所有元素都必须属于同一数据类型。数组中的每个数据元素都对应于一组下标(j1,j2,,jn),每个下标的取值范围是 0 ji bi - 1,bi称为第 i 维的长度(i = 1,2,,n)。显然,当 n = 1 时,n 维数组退化为定长的线性表。反之,n 维数组也可以看成是线性表的推广。

我们可以把二维数组看成是一个定长的线性表:它的每个数据元素也是一个定长的线性表。

数组一旦被定义,它的维数和维界就不再改变。

2、数组的顺序表示和实现

由于数组一般不作插入或删除操作,一旦建立了数组,则结构中的数据元素个数和元素之间的关系就不再发生变化。因此,采用顺序存储结构表示数组是自然的事。

由于存储单元是一维的结构,而数组是多维的结构,则用一组连续存储单元存放数组的数据元素就有个次序约定问题。对二维数组可有两种存储方式:一种以列序为主序(column major order)的存储方式,一种是以行序为主序(row major order)的存储方式。

End

猜你喜欢

转载自www.cnblogs.com/Tom-1103/p/12203865.html