- 4
- 0
- 约9.96千字
- 约 50页
- 2017-02-22 发布于上海
- 举报
数组和广义表线性表的扩展表中的数据元素本身
第5章 数组和广义表 ——线性表的扩展:表中的数据元素本身也是一个数据结构 5.1 数组的定义 5.2 数组的顺序表示和实现 5.3 矩阵的压缩存储 5.3.1 特殊矩阵 5.3.2 稀疏矩阵 ADT Array { 数据对象: ji=0,…,bi-1,I=1,2,…,n; D = {aj1j2...jn | n(0)称为数组的维数,bi是数组第i维的长度, ji是数组元素的第i维下标, aj1j2. . .jn∈Elemset} 数据关系: R={R1 , R2 ... Rn} Ri = {< aj1...ji...jn, aj1...ji+1...jn > | 对每一维是线性的 0≤jk≤bk-1, 1≤k≤n 且k≠i 0≤ji≤bi-2, aj1...ji...jn, aj1...ji+1...jn∈D,I=2,…,n} 基本操作: InitArray(A,n,bound1,bound2,...,boundn); …… }ADT Array 二维数组的类型定义: typedef ElemType Array2[m][n]; Array2 A; 等价于: typedef ElemType Array1[n]; typedef Array1 Array2[m]; Array2 A; a00 a01 a02 ... A0,n-1 a10 a11 a12 ... A1,n-1 Amxn= ...... am-1,0 am-1,1 am-1,2 ... Am-1,n-1 Am×n=( (a00,a01,...a0,n-1), (a10,a11,...a1,n-1), ..., (am-1,0,am-1,1,...am-1,n-1) ) 5.2 数组的顺序表示和实现 除了初始化和销毁之外, 数组一般只有存取操作和修改元素值的操作, 也没有插入和删除操作。 存储时一般以行序为主序:(如C语言, PASCAL, BASIC等) Amxn=(a00,a01,...a0,n-1,a10,a11,...a1,n-1,...,am-1,0, am-1,1,...am-1,n-1) 二维数组的存储 LOC[0,0]为基地址,二维数组A[b1][b2]中元素aij的存储位置为: LOC[i,j]=LOC[0,0]+(b2×i+j)×L 0=i=b1-1 0=j=b2-1 L——每个数据元素所占的存储空间大小 例5.1: 若 L=2, LOC[0,0] = 1000,求LOC[2,3] LOC[2,3] = LOC[0,0] + (5*2+3)*L = 1000 + 13 * 2 = 1026 三维数组的存储 若LOC[0,0,0] 为基地址: LOC[i,j,k] = LOC[0,0,0]+ (n*h*i+h*j+k)*L 0 = i m 0 = j n 0 = k h 每个数据元素占L个存储单元 N维数组存储 b1,b2,...,bn是n维数组A每一维的维界,数组元素A(j1,j2,...,jn)的存储位置为: LOC[j1,j2,...jn]=LOC[0,0,...,0] + (b2×b3×…×bn×j1 + b3×…×bn×j2 + ... + bn×jn-1 + jn )×L 例: 在C语言中,设数组A[5][6][7][8]的首地址为2000,每个元素占2个字节;求元素A[3][4][5][4]的地址。 LOC[3,4,5,4] = 2000+(6*7*8*3+7*8*4+8*5+4)*2 = 2000+(1008+224+40+4)*2 = 4552 5.3 矩阵的压缩存储 矩 阵: 二维数组 特殊矩阵: 大量重复元素或大量0元素 稀疏矩阵: 大量0元素 压缩存储: 重复元素只分配一个存储空间, 0元素不分配存储空间 5.3.1 特殊矩阵 对 称 矩阵: aij = aji (1=i,j=n) 下三角矩阵: 当ij时, aij = 0, (1=i,j=n) 三对角矩阵: 当|i-j| 1时, aij = 0,
您可能关注的文档
- 数学概念及其教学.ppt
- 数学正弦定理人教A版必修页.ppt
- 数学活动找朋友活动过程导入今天徐老师给.ppt
- 数学物理方法第十三章.ppt
- 数学物理方法第九章.ppt
- 数学物理方法第十二章.ppt
- 数学物理方法第十四章.ppt
- 数学物理方法第十章.ppt
- 数学物理方程ch.ppt
- 数学直线与圆圆与圆的位置关系.ppt
- 中国国家标准 GB/T 16172-2026建筑材料热释放速率和产烟速率试验方法.pdf
- GB/T 16172-2026建筑材料热释放速率和产烟速率试验方法.pdf
- 《GB/T 16172-2026建筑材料热释放速率和产烟速率试验方法》.pdf
- 《GB/T 14926.62-2026实验动物 猴免疫缺陷病毒检测方法》.pdf
- GB/T 14926.62-2026实验动物 猴免疫缺陷病毒检测方法.pdf
- GB/T 46917.3-2026标准语义知识库 第3部分:语义集成技术要求.pdf
- 《GB/T 46917.3-2026标准语义知识库 第3部分:语义集成技术要求》.pdf
- 中国国家标准 GB/T 46917.3-2026标准语义知识库 第3部分:语义集成技术要求.pdf
- 中国国家标准 GB/T 45305.3-2026声学 建筑构件隔声的实验室测量 第3部分:撞击声隔声测量.pdf
- GB/T 45305.3-2026声学 建筑构件隔声的实验室测量 第3部分:撞击声隔声测量.pdf
原创力文档

文档评论(0)