网站大量收购独家精品文档,联系QQ:2885784924

4.3 抽象数据类型(课件)高中信息技术选修1数据与数据结构(浙教版2019).pptxVIP

4.3 抽象数据类型(课件)高中信息技术选修1数据与数据结构(浙教版2019).pptx

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

第3节抽象数据类型(1课时)

第4章树

浙教版(2019)选修一

PART01

数据类型与抽象数据类型

新课导入

抽象?

抽象是指抽取出事物具有的普遍性本质,是对具体事物的一个概括。

抽象是一种思考问题的方式,它隐藏了繁杂的细节,只保留实现目标所必需的信息。

姓名

班级

学籍

排名

新课导入

数据类型

基本数据类型由计算机编程环境提供,编程者可以在编程时直接用系统提供的标识符进行定义,如Python编程语言中的整型、实型、布尔型等。

新课导入

sum()

tan()

print()

average()

len()

sin()

1

概念

抽象数据类型:(AbstractDataType,简称ADT)是指一个数学模型及定义在该模型上的一组操作。

ADT的基本思想是抽象,它的定义仅取决于它的一组逻辑特性,把数据结构及其操作作为一个整体来研究,而与其在计算机内部如何

表示和实现无关。

Python的字符串类型(str)就是一个抽象数据类型,在字符串对象的内部提供了一组操作可供编程者使用,每个操作都有明确的抽象意义,编程者不必受制于操作内部的具体实现技术,在程序设计时可以直接使用。

字符串抽象数据类型的内部表现

sum()

tan()

print()

average()

abs()

sin()

跑动

跳跃

下蹲

在设计某互动媒体中的一个角色对象时,设计者可以对其定义几种基本操作,如跑动、跳跃等;一个角色对象到底需要哪些操作,只能由设计者根据实际需要来确定,如为角色对象增加下蹲等操作。

描述

定义一个抽象数据类型,需要清晰地表述出各方面的形式要求(操作的名字、参数的个数和类型等)和功能要求(希望这个操作完成什么样的计算或产生什么效果等)。

当然,还需要为这一抽象数据类型确定一个类型名。

描述抽象数据类型的标准格式

2

4

5

3

1

如何为创建操作提供初始元素序列;

检查线性表中是否存在某个特定数据对象;

改变线性表中的内容,包括加入新元素或删除已有元素等;

实现一个或两个表的操作,包括表的组合操作等;

实现对线性表中的每一个元素的操作,即对表元素的遍历。

在前三章有关线性表数据结构的学习中,已经知道了线性表数据结构会涉及的一些操作。

线性表抽象数据类型

ADTList:

List(self)

is_empty(self)

len(self)

prepend(self,elem)

append(self,elem)

insert(self,elem,i)

del_first(self)

del_last(self)

del(self,i)

search(self,elem)

forall(self,op)

#创建一个新表

#判断self是否为一个空表

#返回表的长度

#在表头插入元素elem

#在表尾插入元素elem

#在表的第i个位置插入元素elem

#删除第一个元素

#删除最后一个元素

#删除第1个元素

#查找元素elem在表中第一次出现的位置

#对表中的每个元素执行op操作

1.如何定义一个矩形抽象数据类型?

ADTjx:

chang;#长度数据

kuan;#宽度数据

zc(self)#求矩形的周长

mj(self)#求矩形的面积

ADT抽象数据类型名:

Data

数据元素之间逻辑关系的定义

Operation

操作1

初始条件

操作结果描述

操作2

……

操作n

……

endADT

抽象数据类型(链表节点)

##定义一个链表节点的抽象类

classNode():

#初始化链表节点为空

def__init__(self,value,next=None):

self._value=value

self._next=next

#取当前节点的数值

defgetValue(self):

returnself._value

ADT类型:class

抽象数据类型名:Node

初始化条件:__init__函数

操作:getValue函数

列表,字符串,队列,树等都是抽象数据类型。

列表:

ADTList:

List(self)

is_empty(self

您可能关注的文档

文档评论(0)

k12学习资料 + 关注
实名认证
文档贡献者

教师资格证持证人

k12学习资料

领域认证该用户于2023年06月02日上传了教师资格证

1亿VIP精品文档

相关文档