一、数组
数组的定义
1、数组是一组有固定个数的数据元素的集合,这使得对数组的操作不再像线性表那样可以在表中任意合法的位置上插入或删除一个元素。
2、对数组的操作一般只有两类:获取或修改特定位置元素的值。广义表、普通数组的各项操作都不会引起元素的插入或删除,因此,数组可看作普通线性表的推广,数组常采用顺序存储结构。
数组的顺序表示和实现
(一)类型特点
1、数组是多维的结构,而存储空间是一个一维的结构。
2、只有引用型操作,没有加工型操作。
(二)对于一维数组,有两种顺序映象的方式
1、以行序为主序(低下标优先)
具体实现时,按行号从小到大的顺序,先将第一行中元素全部存放好,再存放第二行元素,第三行元素,依次类推 ……
2、以列序为主序(高下标优先)
谁变的慢即以谁为主序
(三)以行序为主序的存储映像
二维数组A中任一元素ai,j 的存储位置LOC(i,j) = LOC(0,0) + (i×b2+j)×L
,其中b2:每一行的元素,L:每一个所占空间的大小。
(四)数组随机访问计算方法
1、初始地址为LOC(0,0,…,0);
2、b