51数组的类型定义 52数组的顺序表示和实现 53稀疏矩阵的压缩存储 54广义表的类型定义 55广义表的表示方法 56广义表操作的递归函数
5.1 数组的类型定义 5.3 稀疏矩阵的压缩存储 5.2 数组的顺序表示和实现 5.4 广义表的类型定义 5.5 广义表的表示方法 5.6 广义表操作的递归函数
51数组的类型定义 ADTArray i 数据对象: D={=0,…-1,=1,2…n} 数据关系 R={R1,R2,…,Rn} R1={<1,乃j,a1i+1,y >0≤i≤b-1 k 1≤k≤n且k≠i,0≤j≤b;-2,i2,,n} 基本操作 J ADTArray
5.1 数组的类型定义 ADT Array { 数据对象: D={aj 1,j 2, ...,,ji,j n | ji =0,...,bi -1, i=1,2,..,n } 数据关系: R={R1, R2, ..., Rn} Ri={<aj 1 ,... j i ,... j n , aj 1 , ...j i +1, ...j n > | 0 jk bk -1, 1 k n 且k i, 0 j i bi -2, i=2,...,n } } ADT Array 基本操作:
二维数组的定义: 数据对象: D={a10≤b-10≤b2-1} 数据关系 R=ROW, COL ROW={a124+110sib-2.0≤b21} COL={a1a1+>|0≤ib-1,0≤jsb2}
二维数组的定义: 数据对象: D = {aij | 0≤i≤b1 -1, 0 ≤j≤b2 -1} 数据关系: R = { ROW, COL } ROW = {<ai,j,ai+1,j>| 0≤i≤b1 -2, 0≤j≤b2 -1} COL = {<ai,j,ai,j+1>| 0≤i≤b1 -1, 0≤ j≤b2 -2}
基本操作: InitArray (&A, n, bound1, ., bound) Destroyarray ( &a) Value(A, &e, index, ., index) Assign(&A, e, index, s, index)
基本操作: InitArray(&A, n, bound1, ..., boundn) DestroyArray(&A) Value(A, &e, index1, ..., indexn) Assign(&A, e, index1, ..., indexn)
Initarray(&A, n, bound l, .. bound 操作结果:若维数n和各维长度合法, 则构造相应的数组A,并 返回OK
InitArray(&A, n, bound1, ..., boundn) 操作结果:若维数 n 和各维长度合法, 则构造相应的数组A,并 返回OK