第2章-6数组.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章-6数组

Longman 2.4 数组 数组 数组的定义 数组是n(n=0)个相同数据类型数据元素构成的有限序列。 在顺序存储方式下,一个一维数组,一旦第一个元素 ai 的存储地址 Loc(ai)确定,而每个元素所占用的存储空间大小k为则第i个元素的地址可以由以下公式计算: 一维数组 连续存储的线性聚集 除第一个元素外,其他每一个元素有一个且仅有一个直接前驱。 除最后一个元素外,其他每一个元素有一个且仅有一个直接后继。 一维数组是一个线性表。 二维数组 二维数组的任何一行都是一个线性表 二维数组可以看成由m个行向量组成的线性表,这种情况称为数组的行主序。 二维数组也可以看成由n个行列向量组成的线性表,这种情况称为数组的列主序。 二维数组的顺序存储结构 两种情况: 行优先顺序存储 列优先顺序存储 行优先顺序存储的地址关系 Loc(aij)=Loc(a11)+((i-1)*n+(j-1))*L 列优先顺序存储的地址关系 Loc(aij)=Loc(a11)+((j-1)*m+(i-1))*L 其中L是数组中每个元素占有的字节数 数组顺序存储的优点 随机存取 矩阵的压缩存储 矩阵是很多科学与工程计算问题中研究的数学对象。在此我们感兴趣的是如何存储矩阵的元素,从而使矩阵的各种运算等能够有效地进行。 压缩存储:在数值分析中经常出现一些阶数很高的矩阵,同时在矩阵中有很多值相同的元素或零元素,称为稀疏矩阵。为了节省空间,可以为多个值相同的元素只分配一个空间,对零元素不分配空间。 特殊矩阵:值相同的元素或零元素在矩阵中的分布有一定的规律。 特殊矩阵 对称矩阵:满足aij = aji 1=i,j = n我们只存储矩阵的下三角及对角线。那么只需要n(n+1)/2个元素的空间。 设以一维数组s[0...n(n+1)/2-1]来存储。则矩阵中的元素aij与其在数组中的位置有如下的关系: i=j(下三角阵): Loc(aij)=Loc(a11)+(i*(i-1)/2+(j-1))*L i=j(上三角阵): Loc(aij)=Loc(a11)+(j*(j-1)/2+(i-1))*L 特殊矩阵 三角矩阵:主对角线以上(或以下)均为同一个常数,则称为下三角矩阵(或上三角矩阵)。 设以一维数组s[0... n(n+1)/2]来存储,最后一个单元存储常数项。则矩阵中的元素aij与其在数组中的位置有如下的关系: i=j(下三角阵): Loc(aij)=Loc(a11)+(i*(i-1)/2+(j-1))*L i=j(上三角阵): Loc(aij)=Loc(a11)+((i-1)* (2n-i+2)/2+(j-i))*L 带状(三对角)矩阵 数据元素存放在主对角线及其临近的上下方。 地址关系 Loc(aij)=Loc(a11)+((i-1)*2+(j-1))*L =Loc(a11)+(2i+j-3)*L 稀疏矩阵 我们在存储的时候,只记录t个非零元素的信息。 除了存储非零元素的值之外,还存储它所在的行号和列号。由此构成一个三元组(i,j,aij),该三元组唯一确定了该矩阵元素。 除此而外,还记录矩阵的信息:行列m,n和非零元素的个数t。 稀疏矩阵 The End Loc(ai)=Loc(a1)+(i-1)*L 三维数组顺序存储Amnp 行优先的地址关系 Loc(aijk)=Loc(a111)+((i-1)*n*p+(j-1)*p+(k-1))*L 列优先的地址关系 Loc(aijk)=Loc(a111)+((k-1)*m*n+(j-1)*n+(i-1))*L 非零元素个数 数组维数 元素值 元素 下标

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档