- 1、本文档共70页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机软件技术基础;第2章 基本数据结构及其运算;2.4 线性表的索引存储结构;2.4.1 索引存储的概念;2.4.1 索引存储的概念;2.4.1 索引存储的概念;2.4.1 索引存储的概念;2.4.1 索引存储的概念;2.4.1 索引存储的概念;2.4.1 索引存储的概念;2.4.1 索引存储的概念;2.4.2 “顺序-索引-顺序”存储方式;2.4.2 “顺序-索引-顺序”存储方式;2.4.3 “顺序-索引-链接”存储方式;;;2.4.4 多重索引存储结构;2.4.4 多重索引存储结构;2.5 数 组;主要讨论二维数组,是数学中的矩阵在程序设计语言中的表示。
程序设计语言中的数组在计算机中是顺序存储的。当矩阵中的绝大部分元素为零时,采用一般的二维数组存储方式会浪费大量的存储空间,同时也做了大量不必要的运算。
主要讨论:①一般二维数组的顺序存储结构;②当矩阵中绝大部分为零元素时的表示方法。;1.二维数组以行为主的顺序存储;2.二维数组以列为主的顺序存储;2.5.2 规则矩阵的压缩
1.下三角矩阵的压缩存储;数组的基本概念
数组是n(n>1)个相同类型数据元素a1,a2,…,an构成的有限序列,且该有限序列存储在一块地址连续的内存单元中。
由此可见,数组的定义类似于采用顺序存储结构的线性表。;数组具有以下性质
数组中的数据元素数目固定。一旦定义了一个数组,其数据元素数目不再有增减变化。
数组中的数据元素具有相同的数据类型。
数组中的每个数据元素都和一组惟一的下标值对应。
数组是一种随机存储结构。可随机存取数组中的任意数据元素。;;27;28; 对一个已知以行序为主序的计算机系统中,当二维数组第一个数据元素a1,1的存储地址LOC(a1,1)和每个数据元素所占用的存储单元k确定后,则该二维数组中任一数据元素ai,j的存储地址可由下式确定:
LOC(ai,j)=LOC(a1,1)+[(i-1)*n+(j-1)]*k
其中n为列数。;30; 同理可推出在以列序为主序的计算机系统中有:
LOC(ai,j)=LOC(a1,1)+[(j-1)*m+(i-1)]*k
其中m为行数。;32;33;34;如果数组中绝大部分的元素为零,将会造成大量存储空间的浪费。所以对此数组必须要考虑压缩存储方法。
;2011-8-29;2011-8-29;2.5.2 规则矩阵的压缩;39;2011-8-29;41; n2个元素←→ n(n+1)/2个元素
A[0..n-1,0..n-1] ←→ B[0..n(n+1)/2-1]
a[i][j] ←→ b[k];43;44;45;46;47;48;49;50;51;52;53; 若把稀疏矩阵的三元组线性表按顺序存储结构存储,则称为稀疏矩阵的三元组顺序表。则三元组顺序表的数据结构可定义如下:; #define MaxSize 100 /*矩阵中非零元素最多个数*/
typedef struct
{ int r; /*行号*/
int c; /*列号*/
ElemType d; /*元素值*/
} TupNode; /*三元组定义*/
typedef struct
{ int rows; /*行数值*/
int cols; /*列数值*/
int nums; /*非零元素个数*/
TupNode data[MaxSize];
} TSMatrix; /*三元组顺序表定义*/; 其中,data域中表示的非零元素通常以行序为主序顺序排列,它是一种下标按行有序的存储结构。这种有序存储结构可简化大多数矩阵运算算法。下面的讨论假设data域按行有序存储。; (1) 从一个二维矩阵创建其三元组表示
以行序方式扫描二维矩阵A,将其非零的元素插入到三元组t的后面。算法如下:
void CreatMat(TSMatrix t,ElemType A[M][N])
{ int i,j; t.rows=M;t.cols=N;t.nums=0;
for (i=0;iM;i++)
{ for (j=0;jN;j++)
文档评论(0)