第5章数组和广义表数据结构(C描述)
第5章 数组和广义表 数据结构(C描述)
目录5.1多维数组5.23多维数组的存储结构5.3特殊矩阵及其压缩存储5.4稀疏矩阵5.5广义表退出
5.5 广义表 5.1多维数组 5.2 多维数组的存储结构 5.3 特殊矩阵及其压缩存储 5.4 稀疏矩阵 退出 目 录
5.1 多维数组5.1.1多维数组的概念1. 一维数组一维数组可以看成是一个线性表或一个向量(第二章已经介绍),它在计算机内是存放在一块连续的存储单元中,适合于随机查找。这在第二章的线性表的顺序存储结构中已经介绍。2. 二维数组二维数组可以看成是向量的推广
5.1 多维数组 5.1.1多维数组的概念 1.一维数组 一维数组可以看成是一个线性表或一个向量(第 二章已经介绍),它在计算机内是存放在一块连 续的存储单元中,适合于随机查找。这在第二章 的线性表的顺序存储结构中已经介绍。 2.二维数组 二维数组可以看成是向量的推广
例如,设A是一个有m行n列的二维数组,则A可以表示为:aooao1aon-1a1oailain-1A=am-1 0am-1 1am-1 n-1在此,可以将二维数组A看成是由m个行向量[XX,,., Xm-JT组成,其中,X-(aio, ail,.,ain-1),0<i<m-1;也可以将二维数组A看成是由n个列向量[yoY,.,yn-]组成,其中 y,-(aoi, aii,..,am-I),O<i<n-
a00 a01 . a0n-1 a10 a11 . a1n-1 . am-1 0 am-1 1 . am-1 n-1 A= 例如,设A是一个有m行n列的二维数组,则A可以 表示为: 在此,可以将二维数组A看成是由m个行向量[X0, X1, .,Xm-1 ] T组成,其中,Xi =( ai0, ai1, .,ain-1 ), 0≤i≤m-1;也可以将二维数组A看成是由n个列向量[y0 , y1 , .,yn-1 ]组成,其中 yi =(a0i, a1i, .,am-1i), 0≤i≤n-1
由此可知二维数组中的每一个元素最多可有二个直接前驱和两个直接后继(边界除外),故是一种典型的非线性结构。3.多维数组同理,三维数组最多可有三个直接前驱和三个直接后继,三维以上数组可以作类似分析。因此,可以把三维以上的数组称为多维数组,多维数组可有多个直接前驱和多个直接后继,故多维数组是一种非线性结构
由此可知二维数组中的每一个元素 最多可有二个直接 前驱和两个直接后继(边界除外),故是一种典型的 非线性结构。 3.多维数组 同理,三维数组最多可有三个直接前驱和三个直接后继, 三维以上数组可以作类似分析。因此,可以把三维以上的 数组称为多维数组,多维数组可有多个直接前驱和多个直 接后继,故多维数组是一种非线性结构