首页
高中信息技术课件、教案、试卷中心
用户登录
资料
搜索
ID: 18000508
第四章 抽象数据类型 课件(共35张PPT) 2023—2024学年粤教版(2019)高中信息技术选修1
日期:2026-01-26
科目:信息技术
类型:高中课件
查看:35次
大小:2116880B
来源:二一课件通
预览图
1/12
张
第四章
,
2024
,
选修
,
信息技术
,
高中
,
2019
(
课件网
) 第四章 抽象数据类型 生活中的问题想要用计算机编程求解,不是用简单的数据类型就能全部实现,还需要用抽象数据类型来描述问题的数据模型和基本操作。除了如线性表这种线性关系,还有很多数据之间的关系是层次或网状的,即以非线性形式存在的。 4 . 1 . 1 抽象数据类型 在用计算机解决实际问题的过程中,对于要解决的问题,不管用什么语言编写程序,其解决的方法和思路是相同的。为了便于描述问题和抽象问题,在一般数据类型的基础上提出了抽象数据类型,它可以有效地帮助我们思考、描述问题的数据模型和基本操作。 很多高级语言都有“整型”这种数据类型,其实整型也是一种抽象数据类型,因为不同的计算机对整型变量的存储是不一样的。而我们用到整型变量时,并不关心它是如何存储的,只需要了解其取值范围(值域)和能够进行的操作运算(加、减、乘、除、取模等),就可以正确地使用整型变量了。这正体现了抽象数据类型的本质:忽略不同机器、不同语言的实现细节,在更普遍、更高的层次抽象出问题的数据模型,并定义数据模型的相关操作,从而实现对问题的解决。 抽象数据类型(Abstract Data Type,简称ADT)是由一种数据结构和在其上的一组操作(运算)所组成。抽象数据类型包含一般数据类型的概念,但含义比一般数据类型更广、更抽象。一般数据类型通常由具体语言系统内部定义,直接提供给用户使用;而抽象数据类型还包括用户在编程处理数据、设计软件系统时自己定义的数据类型,通常由用户自行定义,包括定义其所包含的数据(数据结构)和在这些数据上所进行的操作。在定义抽象数据类型时,就是定义其数据的逻辑结构和操作说明,不考虑数据的存储结构和操作的具体实现,这样具有较好的通用性和可移植性,便于用任何一种语言实现。 ADT 抽象数据类型名 { 数据:<数据描述> 操作:<基本操作的定义> }ADT 抽象数据类型名 ADT 复数{ 数据: 实部; 虚部; 操作: 初始化复数; 获取实部; 获取虚部; 获取模; 获取辐角; 复数加法; 复数减法; 复数乘法; 复数除法; }ADT 复数 为了便于理解和表达的简洁,对抽象数据类型定义中的数据(数据结构)及基本操作,我们采用中文说明和类C++语言的形式进行描述(借用C++语言的一些语法元素,但是不严格遵循C++语言)。例如,我们可以定义“复数”这种抽象数据类型来表示数学上的复数: 4 . 1 . 2 抽象数据类型的应用 利用抽象数据类型定义复数,并通过编程实现,就可以使用计算机处理复数了。除了数学运算外,在解决现实问题和实际编写计算机应用软件时,因为要解决的问题更复杂, 所以更需要大量应用抽象数据类型来描述问题和设计解决方案。 如项目范例中的俄罗斯方块游戏,方块的颜色、形状都有多种,每一个方块都有左 旋、右旋、左移、右移、下落等多种操作,变化较多。游戏程序实现的关键是如何操控这 些方块,可以定义一种抽象数据类型“方块”,其中包含方块的形状、颜色、中心点等, 以及对它的左旋、右旋、左移、右移、下落等多种操作。类似的,我们还可以将俄罗斯方 块游戏的区域也定义为一种抽象数据类型,从而完成游戏的设计。 (1)象棋游戏里(如图4-3所示),每一个棋子上面的文字都不一样,有的是“马”、有的是“兵”等,对阵双方的棋子颜色一般为黑色和红色,每个棋子必须响应鼠标或键盘的控制动作,实现棋子的拿起、移动、放下等操作。这里可以将棋子定义为一种抽象数据类型,其数据模型包括棋子的颜色、棋子的文字、棋子在棋盘上的坐标等,基本操作包括拿起、移动、放下等。 4 . 1 . 3 抽象数据类型的实现 为帮助大家更好地理解,接下来以定义抽象数据类型“长方形”为例,呈现抽象数据 类型 ... ...
~~ 您好,已阅读到文档的结尾了 ~~
立即下载
免费下载
(校网通专属)
登录下载Word版课件
同类资源
python编程题考点汇总 微课 高中信息技术 粤教版 必修1(2025-12-24)
python基础知识(二) 微课 高中信息技术 粤教版 必修1(2025-12-24)
python的for循环结构 微课 高中信息技术 粤教版 必修1(2025-12-24)
python的选择结构 微课 高中信息技术 粤教版 必修1(2025-12-24)
python的顺序结构 微课 高中信息技术 粤教版 必修1(2025-12-24)
上传课件兼职赚钱