- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1.2 抽象数据类型 抽象数据类型的概念最早出现在20世纪70年代,它是面向对象方法的重要理论基础。 本书在内容的组织中仅仅使用了抽象数据类型的概念,而没有严格采用面向对象的程序设计语言的描述机制(例如class)。 基本概念-类型 类型(type)是一组值(或者对象)的集合。 例如:布尔作为一种类型是由真(true)和假(false)两个值组成的集合; 布尔向量也可以作为一种类型,它的每个值是一个由true或false构成的向量。 基本概念-数据类型 数据类型(data type)通常是指在计算机(语言)中可以使用的一个类型,它不但包括这个类型的值的集合,还包括定义在这个类型上的一组操作。 例如:整数作为一个数据类型是指在计算机上所能表示的(不是数学意义上任意大小的)所有整数和语言中定义的对于这些整数的全部操作(整数的加、减、乘、除、取余等)。 基本概念-抽象数据类型 抽象数据类型(Abstract Data Type 简称为ADT)可以定义作具有一定行为(操作)的抽象(数学)类型。 它不关心类型中值的具体表示方式和数据类型中定义的各种操作的具体实现方法,是所有可能的值的具体表示和各种操作的具体实现的抽象。 意义和作用(1) 抽象数据类型的实质是抽象出了数据类型的使用要求,而把它的具体表示方式和运算的实现细节都隐藏起来。 抽象数据类型仅仅规定了数据类型应该具有的行为(操作)。一旦抽象数据类型被正确实现,就好像程序设计语言中所提供的数据类型那样,可以被自由使用。 意义和作用(2) 抽象数据类型支持数据类型的实现与使用分离的原则,允许独立地考虑数据类型的外部接口和内部的实现。 这使应用程序只要按抽象数据类型的接口统一其使用界面;可以不管其是否已经实现,也不管它是如何实现的。 对于系统的分解、设计、维护和修改均十分有利。 ?例1-抽象数据类型圆 ADT Circle is operations area 计算圆的面积 circumference 计算圆的周长 getRadius 获取圆的半径 setRadius 设置圆的半径 end ADT Circle 例2-集合抽象数据类型 ADT Set is Operations isEmpty 判断集合是否是空集合 add 给集合增加一个元素 remove 删除集合中的一个元素 isIn 判断一个元素是否在当前集合中 end ADT Set 1.3 数据结构 关于数据结构的研究,可以追溯到1972年奠基性的论文《数据结构笔记》;而现代计算机所大量采用的基本数据结构,最早的系统论述应归功于1973年的名著《计算机程序设计技巧》的问世。 为了学习和研究的方便,计算机科学家把常用的数据进行分类,总结出许多典型的数据结构。 什么是数据结构 (通常)可以把数据结构理解为: 计算机中表示(存储)的、具有一定(逻辑)关系和行为的一组数据。 其中的每个数据(元素)称为这个结构的一个结点。 (根据面向对象的观点)可以把数据结构理解成为抽象数据类型的物理实现。 主要解决两个问题: 如何具体表示抽象数据类型中的数学模型; 如何给出抽象数据类型中需要操作的实现。 数据结构三要素: 逻辑结构: 指数学模型中的基本元素(结点) 和元素之间的相互关系。 存储结构: 指数学模型的具体表示方式,包 括结点的表示和关系的表示。 操 作: 指抽象数据类型关心的各种行为在 存储结构上的具体实现(算法)。 例子-集合 从集合抽象数据类型的定义出发,将讨论它的实现——集合数据结构: 根据数学的概念,集合中的元素是各不相同而且无序的(逻辑结构); 将介绍使用顺序表、单链表、散列表等等许多不同的集合表示方法(存储结构); 并且在这些不同的表示基础上,给出各自的行为实现算法(操作)。 1.3.2 数据结构的分类 主要根据逻辑结构 和存储结构 进行分类 逻辑结构 B=K,R K是结点的有穷集合, R是K上的一个关系。 K上的一个关系就是K上的一些二元组组成的集合 K上的二元组是K中元素的有序对. 若k,k’?K, k,k’?R,则称k为k’的前驱,k’为k的后继。 没有前驱的结点称为开始结点, 没有后继的结点称为终端结点。 K上不同的二元组集合构成不同的关系。 逻辑结构的概念 按逻辑结构分类 根据R的特点可以将数据结构分为以下三类: 线性结构:K中每个
您可能关注的文档
- 《体育经济学概论》 第06章 体育市场的供需及体育市场机制.ppt
- 《体育经济学概论》 第07章 体育产品价格.ppt
- 《体育经济学概论》 第08章 体育消费者行为.ppt
- 《体育经济学概论》 第09章 体育产品生产者的劳动报酬(分配).ppt
- 《体育经济学概论》 第10章 体育产业政策.ppt
- 《体育科学研究方法(第三版)》电子课件 第04章 文献法.ppt
- 《体育科学研究方法(第三版)》电子课件 第05章 观察法.ppt
- 《体育科学研究方法(第三版)》电子课件 第09章 体育科学研究论文的撰写与评价.ppt
- 《体育市场营销》(第三版)电子教案与课件 第01章 体育市场概论.ppt
- 《数字电子技术基础简明教程》(第3版)教学课件 CH5 CH52.PPT
最近下载
- 生命体征的观察与照护.pptx VIP
- 电力设计软件:CDEGS二次开发_(6).CDEGS模型创建与编辑.docx VIP
- 《县级(区域)医疗资源集中化运行规范 第2部分:医学影像会诊中心》.docx VIP
- 国有企业内部薪酬分配指引(2025年).docx VIP
- 铁路线路防护栅栏 通线(2023)8001.docx VIP
- 电力系统设计软件:CDEGS二次开发_(5).CDEGS模块深度应用.docx VIP
- 2025年银行业专业人员初级职业资格考试(银行业法律法规与综合能力)历年参考题库含答案详解.docx VIP
- 2021年自考06090人员素质测评理论与方法.pdf VIP
- 本科药理学教学大纲(72学时).doc VIP
- 2024年九年级上册道德与法治期中测试卷含答案.pdf VIP
原创力文档


文档评论(0)