- 1、本文档共63页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第05章数组和广义表-副本
第五章 数组和广义表;5.1数组的定义;例如,二维数组A: ;由于计算机的内存结构是一维的,因此用一维内存来表示多维数组,就必须按某种次序将数组元素排成一列序列,然后将这个线性序列存放在存储器中。
数组一旦建立,结构中的元素个数和元素间的关系就不再发生变化。因此,一般采用顺序存储的方法来表示数组。;行优先顺序或以行为主序存储方式:将数组元素按行排列,第i+1个行向量紧接在第i个行向量后面。以二维数组为例,按行优先顺序存储的线性序列为: a11,a12,…,a1n,a21,a22,…a2n,……,am1,am2,…,amn
在PASCAL、C等语言中,数组就是按行优先顺序存储的。;列优先顺序或以列为主序存储方式:将数组元素按列向量排列,第j+1个列向量紧接在第j个列向量之后,A的m*n个元素按列优先顺序存储的线性序列为:
a11,a21,…,am1,a12,a22,…am2,……,an1,an2,…,anm
在FORTRAN语言中,数组按列优先顺序存储。;行优先顺序——先排最右的下标,从右到左,最后排最左下标。
列优先顺序——先排最左下标,从右向左,最后排最右下标。
例如:三维数组Am*n*p;只要知道开始结点的存放地址(即基地址)、维数和每维的上、下界,以及每个数组元素所占用的单元数,就可以将数组元素的存放地址表示为其下标的线性函数。因此,数组中的任一元素可以在相同的时间内存取,即顺序存储的数组是一个随机存取结构。;压缩存储:为多个值相同的非零元素只分配一个存储空间;对零元素不分配空间。;特殊矩阵:非零元素按照一定的规律分布。;5.3.1(续)对称矩阵的压缩存储;5.3.1(续)对称矩阵的压缩存储;5.3.1(续)三角矩阵的压缩存储;5.3.1(续)三角矩阵的压缩存储;5.3.1(续)三角矩阵的压缩存储;5.3.1(续)三角矩阵的压缩存储;5.3.1(续)三对角矩阵的压缩存储;上述各种特殊矩阵,其非零元素的分布都是有规律的,因此总能找到一种方法将它们压缩存储到一维数组中,并且一般都能找到矩阵中的元素与该一维数组元素的对应关系,通过这个关系,仍能对矩阵的元素进行随机存取。;什么是稀疏矩阵?简单说,设矩阵A中有s个非零元素,若s远远小于矩阵元素的总数(即s≦m×n),则称A为稀疏矩阵。
设在矩阵A中,有s个非零元素。令 e=s/(m*n),称e为矩阵的稀疏因子。通常认为e≦0.05时称之为稀疏矩阵。
;5.3.2稀疏矩阵的压缩存储; ( (1,2,12), (1,3,9), (3,1,-3), (3,6,14),
(4,3,24), (5,2,18), (6,1,15), (6,4,-7) );假设以顺序存储结构来表示三元组表,则可得到稀疏矩阵的一种压缩存储方法——三元组顺序表。
#define maxsize 10000
typedef int datatype;
typedef struct{
int i,j;
datatype v;
}triple; /* 三元组*/;typedef struct{
triple data[maxsize];
int m,n,t;
}tripletable;;转置;5.3.2(续)三元组顺序表上的转置;typedef struct{
triple data[maxsize];
int m,n,t;
}tripletable;;5.3.2(续)三元组顺序表上的转置(二);设置向量num,num[col]表示矩阵A中第col列中非零元的个数。(A的列数:A.n);设置向量cpot,cpot[col]指示A中第col列的第一个非零元在转置矩阵AT.data中的恰当位置。;5.3.2(续)三元组顺序表上的转置(二);转置;转置;转置;转置;转置;转置;转置;转置;转置;转置;for(col=1;col=A.n;++col) num[col] = 0;
for(p=1;p=A.t;++p) //计算A中每列非零元的个数
num[A.data[p].j]++;;for(col=1;col=A.n;++col) num[col] = 0;
for(p=1;p=A.t;++p) //计算A中每列非零元的个数
num[A.data[p].j]++;;十字链表;5.3广义表的定义;5.3广义表的定义;5.4 广义表???定义;5.4 广义表的定义;5.4 广义表的定义;5.4 广义表的定义;广义表的存储结构(一);广义表的存储结构(一);广义表的存储结构(一);广义表
您可能关注的文档
- 矿压课件[0绪论]山科.ppt
- 硬笔书法[学习必备].ppt
- 硬笔书法第一讲:“硬笔书法基本知识”[彭州市三界小学李晓玲收集整理].pptx
- 社会互联网:微博营销[PPT34页].ppt
- 社会学8-社会变迁和现代化.ppt
- 社会保险与商业保险之比较[医疗].ppt
- 社会人与人的社会化三.ppt
- 社会学概论:人的社会化[第三讲].ppt
- 硬笔书法入门[一].ppt
- 社会心理学-第五章归因.ppt
- (高清版)DB4107∕T 516-2024厚皮甜瓜大棚栽培熊蜂授粉技术规程.docx
- (高清版)DB4107∕T 440-2025 金针菇生产技术规程.docx
- (高清版)DB4109∕T 067-2024花生栽培技术规程.docx
- (高清版)DB4113∕T 094-2024甘蓝轻简化栽培技术.docx
- (高清版)DB5305∕T 221-2025 玉米白斑病调查及综合防控技术规程.docx
- (高清版)DB4113∕T 098-2024小辣椒-鲜食豌豆轮作栽培技术规程.docx
- (高清版)DB5104∕T128-2025 攀枝花枇杷等级规格.docx
- (高清版)DB4104∕T 150-2025 居家老年人助洁服务规范.docx
- (高清版)DB4104∕T 151-2025 老年人短期托养服务规范.docx
- (高清版)DB4114∕T 271-2025商丘传统名吃烹饪技艺+归德府腐乳扣肉.docx
最近下载
- 长期卧床患者的体位护理技巧.pptx VIP
- JBT14159.3-2022 空气分离设备能效限额第3部分:液化设备.pdf VIP
- 《民用建筑设计通则》图示.docx VIP
- 灭火应急疏散预案.doc VIP
- 铁路内燃、电力司机考试题库.doc VIP
- 新概念英语第一册 Lesson 55-56 课件.ppt VIP
- 2025AI+BI峰会:DeepInsight Copilot 演进史以及未来探索.pdf VIP
- 《临床药学文献阅读汇报抗感染粘菌素在治疗鲍曼不动杆菌感染vap中的应用》课件模板.ppt VIP
- 2025年福建公需课答案.pdf VIP
- 2020四川园林绿化工程说明及计算规则.pdf VIP
文档评论(0)