- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[2018年必威体育精装版整理]05数组和广义表1
第五章 数组和广义表
继续增加线性表结构的内涵。
数组结构 每个子结构是由基本元素组成的大小均等的线性表。 广义表结构 每个子结构或是基本元素,或是由基本元素组成的大小不等的线性表结构。 本章学习要点:
掌握数组的相关概念
掌握特殊矩阵的压缩存储方式
掌握稀疏矩阵的存储方法
掌握广义表的相关运算
掌握广义表的存储结构
掌握广义表的基本运算的实现
第一节 数组的逻辑结构
1_Array=(D, S, P) 定长线性表
D = {ai| ai∈ElemSet, i=0,1,2,…, n-1}
S = {ai-1,ai| ai-1,ai∈D, i=1,2,…,n-1}
2_Array=(D, S, P) 定长线性表,每个元素又是定长线性表。
D = {ai,j| ai,j∈ElemSet, i=0,1,…,n1-1; j=0,1,…,n2-1}
S = {ROW,COL}
ROW={ai,j-1,ai,j| i=0,1,…,n1-1; j=1,…,n2-1}
COL={ai-1,j,ai,j| i=1,…,n1-1; j=0,1,…,n2-1}
3_Array=(D, S, P) 增加层的关系
基本操作:取值、赋值。
第二节 数组结构的顺序存储结构
数组结构是多维的,内存地址是一维的。
存储方式:行主序,列主序
以行主序为例:
一维: LOC(ai) =base+i
二维(MxN): LOC(ai,j) =base+i*N +j
三维(MxNxP): LOC(ai,j,k) =base+i*N*P +j*P +k
四维(MxNxPxQ):LOC(ai,j,k,l)=base+i*N*P*Q+j*P*Q+k*Q+l
Typedef struct
{ ElemType *base;
int dim; 维数
int *bounds; 各维元素个数
int *constants; 各维包含的基本元素个数
}Array; 例:数组A[3,4,5,6]的存储结构
A.dim=4
A.bounds[]={3,4,5,6}
A.constants[]={120,30,6,1}
A[i,j,k,l]的地址: A.base+(i*120+j*30+k*6+l)
1、初始化数组结构
void Array_Init(Array A,int dim,int bounds[])
{ A.dim=dim;
A.bounds=(int *)malloc(dim*sizeof(int));
A.constants=(int *)malloc(dim*sizeof(int));
if(!A.bounds || !A.constants)
{ printf(“overflow!”);
return;
}
for(i=0;idim;i++) A.bounds[i]=bounds[i];
for(A.constants[dim-1]=1,i=dim-2;i=0;i--)
A.constants[i]=A.bounds[i+1]*A.constants[i+1];
//开辟数组空间
elemtotal=A.bounds[0]*A.constants[0];
A.base=(ElemType *)malloc(elemtotal*sizeof(ElemType));
if(!A.base) { printf(“overflow!”);
return;
}
printf(“OK!”);
}
2、取值
ElemType Array_GetValue(Array A,int dim_i[])//dim[]存放要求元素的下表
{ int offset;
for(offset=0,i=0;iA.dim;i++)
offset+=A.constants[i]* dim_i[i];
return(*(A.base+offset));
}
补充:计算二维数组元素地址的通式设一般的二维数组是A[c1..d1, c2..d2],这里c1,c2不一定是0
一个二维数组A,行下标的范围是1到6,列下标的范围是0到7,每个数组元素用相邻的6个字节存储,存储器按字节编址。那么,这个数组的体积是 个字节。
第三节 矩阵的压缩存储
矩阵的用途:
大型方程组求解、高次方程求解
真正有用的计算是矩阵的计算。
从空间/时间复杂度出发:
一、特殊矩阵
利用矩阵的特征,尽量减少数据的存储量。
对称矩阵 aij=aji
NxN矩阵的存
您可能关注的文档
- [2018年必威体育精装版整理]002人员配置情况报告.ppt
- [2018年必威体育精装版整理]002信息学院考试大纲.doc
- [2018年必威体育精装版整理]00-3第三节圆轴剪切与扭转变形.ppt
- [2018年必威体育精装版整理]003田间统计.ppt
- [2018年必威体育精装版整理]003第三章、修饰工具讲解与应用.ppt
- [2018年必威体育精装版整理]004-电气安装竣工资料.doc
- [2018年必威体育精装版整理]007地下室底板、地梁、墙体、柱子、框架柱、顶板、楼梯间钢筋加工技术交底.doc
- [2018年必威体育精装版整理]007精讲多练Matlab-数学建模实例.ppt
- [2018年必威体育精装版整理]009静电场1.ppt
- [2018年必威体育精装版整理]01--水利工程地基处理--绪论及基础知识.ppt
- [2018年必威体育精装版整理]05监理细则-地基与基础.doc
- [2018年必威体育精装版整理]05第五章相对论基础.ppt
- [2018年必威体育精装版整理]05秋-11秋三级网络技术真题.doc
- [2018年必威体育精装版整理]05第四章药学技术人员管理.ppt
- [2018年必威体育精装版整理]05职能资本与平均利润.ppt
- [2018年必威体育精装版整理]05运输问题.ppt
- [2018年必威体育精装版整理]05住宅设计规范简介.ppt
- [2018年必威体育精装版整理]05通信成本及测算.ppt
- [2018年必威体育精装版整理]05岩石力学性质.ppt
- [2018年必威体育精装版整理]06-第6章_抽样调查.ppt
最近下载
- 河南能源集团网络安全攻防知识培训(分享版)(1).pptx
- 2025年党员考试试题及答案.doc VIP
- 湖南公务员考试真题2024.docx VIP
- mPGES-2作为吸入全身麻醉药物异氟醚作用靶点的应用.pdf VIP
- 案例研究-案例研究:设计与方法.pdf VIP
- 2024届高考物理一轮复习热点题型归类训练专题13动力学和能量观点的综合应用(原卷版+解析).docx VIP
- 烟草质量检验竞赛通用知识题库-上(单选、多选题库).docx VIP
- 德育常规工作培训(1).pptx
- OMRON欧姆龙安全产品F3SG-SR PG系列安全光幕 多光束安全传感器F3SG-SR PG 系列 F3SG-□SR□系列安全光幕 用户手册.pdf
- 保险的培训资料1—开拓准客户.ppt VIP
文档评论(0)