- 1、本文档共81页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]严蔚敏教材讲义 第5章 数组
第5章 数组和广义表 前几章讨论的线性结构中的数据元素都是非结构的原子类型,元素的值是不再分解的。本章讨论的两种数据结构——数组和广义表可以看成是线性表在下述含义上的扩展: 表中的数据元素本身也是一个数据结构。 数组是读者已经很熟悉的一种数据类型,几乎所有的程序设计语言都把数组类型设定为固有类型。本章以抽象数据类型的形式讨论数组的定义和实现,使读者加深对数组类型的理解。 5.1 数组的定义(1学时) 类似于线性表,抽象数据类型数组可形式地定义为: ADT Array{ 数据对象:ji = 0,…,bi-1, i =1,2,…,n, D={aj1j2…jn | n ( 0)称为数组的维数,bi是数组第i 维的长度,ji是数组元素的第i维下标,aj1j2…jn ∈ElemSet} 数据关系:R = {R1,R2,…,Rn} Ri={aj1…ji…jn , aj1…ji+1…jn| 0≤jk≤bk-1, 1≤k≤n 且k!=i, 0≤ji≤bi-2, aj1…j2…jn ,aj1…ji+1…jn ∈D,i=2,…,n } 基本操作: InitArray(A,n,boundl,…,boundn) 操作结果:若维数n和各维长度合法, 则构造相应的数组A,并返回OK。 DestroyArray(A) 操作结果:销毁数组A。 Value(A,e,index,…,indexn) 初始条件:A是n维数组,e为元素变量,随后是n个下标值。 操作结果:若各下标不超界,则e赋值为所指定的A的元素值, 并返回OK。 Assign(A,e,indexl,…,indexn) 初始条件:A是n维数组,e为元素变量,随后是n个下标值。 操作结果:若下标不超界,则将e的值赋给所指定的A的元素, 并返回OK。 } ADT Array 这是一个C语言风格的定义。从上述定义可见,n维数组中含有b1*b2*…bi*…*bn个数据元素,每个元素都受着n个关系的约束。在每个关系中,元素aj1j2…jn(0≤ji≤bi-2)都有一个直接后继元素。因此,就其单个关系而言,这n个关系仍是线性关系。和线性表一样,所有的数据元素都必须属于同一数据类型。数组中的每个数据元素都对应于一组下标( j1,j2,…,jn),每个下标的取值范围是0≤ji≤bi-1, bi称为第i维的长度(i=1,2,…,n)。 显然,当n=1时,n维数组就退化为定长的线性表。反之,n维数组也可以看成是线性表的推广。由此,我们也可以从另一个角度来定义n维数组。 我们可以把二维数组看成是这样一个定长线性表:它的每个数据元素也是一个定长线性表。例如。图5.1(a)所示是一个二维数组,以m行n列的矩阵形式表示。它可以看成是一个线性表 A=(α0, α 1,… αp ) ( p=m-1 或 n-1 ) 其中每个数据元素αj是一个列向量形式的线性表(如图5.1(b)所示) αj =(a0j,a1j,…,am-1,j) 0≤j≤n-1 或者αi 是一个行向量的线性表(如图5.1(c)所示)。 αi =(ai0,ai1,…,ai,n-1) 0≤i≤m-1 在C语言中,一个二维数组类型可以定义为其分量类型为类型的
您可能关注的文档
- [基础科学]空调.ppt
- [外语学习]初中英语语法十大词类复习全攻略:介词考点.pdf
- [外语学习]初中英语语法知识总结学习的啊学习的武器学习的武器.doc
- [外语学习]中口翻译 英语口译.ppt
- [外语学习]十二星座简介英文课件.ppt
- [外语学习]参与式教学法简介.ppt
- [基础科学]住宅性能评定技术标准专题讲座 2010年.ppt
- [外语学习]大学新编实用英语第四册第四单元pps.ppt
- [外语学习]国际贸易实务第二章.ppt
- [外语学习]工商导论2.ppt
- 网关通过MAC采集S7-300配置指南.pdf
- SWP系列全可切多路(16路)巡检报警控制仪通讯协议.pdf
- 海南省万宁市职业能力倾向测验事业单位考试(医疗卫生类E类)试题推荐.docx
- 江苏省海门市事业单位考试职业能力倾向测验(自然科学专技类C类)强化训练题库必考题.docx
- 浙江省永康市事业单位考试(医疗卫生类E类)职业能力倾向测验试卷必考题.docx
- 海南省琼海市职业能力倾向测验事业单位考试(综合管理类A类)试题最新.docx
- 广东省信宜市事业单位考试(综合管理类A类)职业能力倾向测验知识点试题必考题.docx
- 河北省任丘市事业单位考试(自然科学专技类C类)职业能力倾向测验强化训练试题集最新.docx
- 西南药业股票趋势预测.docx
- 新南洋股票趋势预测.docx
最近下载
- 机械测量培训课程.pptx
- 医疗器械安全有效基本要求清单填写参考模板2024年.docx
- 人教版(2024)数学一年级下册四 100以内的口算加、减法 练习.pptx
- 电气装置安装工程质量检验及评定规程DLT5161 2018.doc
- 做好客舱清洁前准备课件讲解.pptx
- 铁道信号论文-信号机维护与故障处理.doc
- ISO13485质量手册+全套程序文件.docx VIP
- 汽车机械维修工(高级技师)职业鉴定考试题库资料(高频300题).pdf
- 多维视角下梧州市普通高中体育生学训现状剖析与发展路径探索.docx
- 江南事业编招聘考试题历年公共基础知识真题汇总-综合应用能力(2010-2021.pdf VIP
文档评论(0)