第5章数组和稀炬阵 51数组 52稀流矩阵 本章小结
1 第5章 数组和稀疏矩阵 5.1 数组 5.2 稀疏矩阵 本章小结
51数组 数组的定义 数组是n(n>1个相同类型数据元素a1a2y,lan 构成的有限序列,且该有限序列存储在一块地址连 续的内存单元中 2维数组:A(a12…,1,a)随机存取 12 ■■■■■■ ■■■■■■ 设每个数据元素占用k个存储单元则任一数据元 素的存储地址LOC(a就可由以下公式求出: LOC(a=LOC(a)+(D)*(0≤≤n) 2
2 5.1 数组 数组是n(n>1)个相同类型数据元素a1 ,a2 ,…,an 构成的有限序列,且该有限序列存储在一块地址连 续的内存单元中。 a1 a2 … … ai … … an 设每个数据元素占用k个存储单元,则任一数据元 素ai的存储地址LOC(ai )就可由以下公式求出: LOC(ai )=LOC(a1 )+(i-1)*k (0≤i≤n) 随机存取 数组的定义: 一维数组:An=(a1 a2 … ai … an )
二维数组: am-1,0am-11 可以看成是由m个行向量组成的线性表,即数组可表 示为:Am=(a02a12,a2…,n1) 其中:Q1=(al0 i09i°°ui°9ui,n 每个数据元素相当于一个一维数组 同样地,也可以将数组看成是由n个列向量组成的 3线性表
3 二维数组: = − − − − − − 1,0 1,1 1, 1 10 11 1, 1 00 01 0, 1 ... ... ... ... ... ... ... ... ... ... ... m m m n n n m n a a a a a a a a a A ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) 可以看成是由m个行向量组成的线性表,即数组可表 示为: 同样地,也可以将数组看成是由n个列向量组成的 线性表。 每个数据元素αi相当于一个一维数组。 ( , ,..., ,..., ) Am = 0 1 i m−1 其中: ( , ,..., ,..., ) 0 1 , −1 = i ai ai aij ai n
, n n×n 从逻辑角度来看:数组中的每个元素a均属于两 个向量:第術上的行向量和第列上的列向量。除周 边元素外,每个元素均有两个直接前驱和两个直接 后继 4
4 = + − + − − ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 1, , 1 , , 1 1, 00 01 0, 1 i j i j i j i j i j n m n a a a a a a a a A 从逻辑角度来看:数组中的每个元素aij均属于两 个向量:第i行上的行向量和第j列上的列向量。除周 边元素外,每个元素均有两个直接前驱和两个直接 后继
维数组 m维数组An0n1…看作二维数组的推广,其 每个元素均属于m个向量,即受到m个关系的约 束,最多可以有m个直接前驱和m个直接后继
5 • m维数组 看作二维数组的推广,其 每个元素均属于m个向量,即受到m个关系的约 束,最多可以有m个直接前驱和m个直接后继。 M维数组: 0 1 m − 1 A n n … n