chap04数据结构数组、串与广义表.pdf

  1. 1、本文档共72页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chap04数据结构数组、串与广义表

第四章 数组、串与广义表 一维数组(向量) 1.逻辑结构:L= (a ,…a ,a ,…,a ) 1 i-1 i n 2.存储结构: int A[MaxSize]; • 问题:如何求一维数组中第i元素的起始地址 (Loc(ai)=?). • 序号为i的元素起始地址=序号为1的元素起始地 址+(i-1)*每个元素所需的空间 二维数组(矩阵) 1.逻辑结构 2.存储结构 int A[m][n]; 在计算机内存中的存储方式 • 二维数组A[m][n]可以看成: (1)由m个具有n个元素的线性表组成。 (2)由n个具有m个元素的线性表组成。 (1)由m个具有n个元素的线性表组成。 (2)由n个具有m个元素的线性表组成。 • 问题:如何求二维数组Amn中第ij元素的起始地 址(Loc(aij)=?). • 二维数组的存储方法有多少种? • 每种存储方法的特点是什么? • 在每种存储方法中Loc(aij)=? 三维数组 • 1.逻辑结构—— 立体 • 2.存储结构: int A[m]n][k]; • 问题:如何求三维数组Amnl中第ijk元素的起始 地址(Loc(aijk)=?). • 三维数组的存储方法有多少种? • 每种存储方法的特点是什么? • 在每种存储方法中Loc(aijk)=? N维数组 • 问题:如何求n维数组Am m …m 中第i i …i 元 1 2 n 1 2 n 素的起始地址(Loc(a i i …i )=?). 1 2 n • n维数组的存储方法有多少种? • 每种存储方法的特点是什么? • 在每种存储方法中Loc(a i i …i )=? 1 2 n • 特殊矩阵 1.对称矩阵 2.上三角矩阵 3.下三角矩阵 • 1.对称矩阵的存储及存储地址的计算方法 • (1)存储方法有多少种? • (2)每种存储的存储地址的计算? • 1.三角矩阵的存储及存储地址的计算方法 • (1)存储方法有多少种? • (2)每种存储的存储地址的计算? • 稀疏矩阵 • 什么是稀疏矩阵? • 表示一个矩阵中元素的要素有哪些? • • 稀疏矩阵的存储结构 • 1、三元组表 struct RCV 稀疏矩阵顺序存储类定义 { int row,col; float value; }; class SMatrix { RCV *item; int r,c,num; public: SMatrix(){ item=NULL; r=0; c=0;num=0; } SMatrix( RCV a[], int n, int row,int col); //a[]是一个三元组 SMatrix tran(); SMatrix tran1(); SMatrix plus(SMatrix b); SMatrix mult(SMatrix b); void prnt(); }; 稀疏矩阵类的构造函数 第一种形态无参数,仅创建一个空的三元组表。 第二种形态设置三元组表a,长度n及行数row 、列数col 四个参 数,创建的三元组表由参数a、n确定,而行数、列数分别由 参数row、co

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档