数据类型及抽象数据类型
数据类型及抽象数据类型
数据类型
定义在一组性质相同的值的集合以及定义在这个值的集合上的一组操作的统称,即数据类型=值的集合+值集合上一组操作
数据类型的作用:
- 约束变量或常量的取值范围
- 约束变量或常量的操作
抽象数据类型(ADT)
一个数学模型以及定义在此数学模型上的一组操作;不考虑计算机内的具体存储结构与运算的具体实现方法
抽象数据类型的形式定义:(D(数据对象),S(关系集),P(基本操作集))三元组表示
ADT 抽象数据类型名{
数据对象:<数据对象的定义(伪代码)>
数据关系:<数据关系的定义(伪代码)>
基本操作:<基本操作的定义>
}ADT 抽象数据类型名
基本操作的定义格式:
- 基本操作名(参数表)
- 赋值参数:只为操作提供输入值
- 引用参数:以&打头,除可提供输入值外,还将返回操作结果
- 初始条件<初始条件描述>:描述操作执行之前数据结构和参数应满足的条件,若不满足,则操作失败,并返回相应出错信息;若初始条件为空,则省略
- 操作结果<操作结果描述>:说明操作正常完成之后,数据结构的变化状况和应返回的结果
例:ADT Circle {
数据对象:D={r,x,y| r,x,y均为实数}
数据关系:R={< r,x,y >| r是半径,<x,y>是圆心坐标}
基本操作:
Circle(&C,r,x,y)
操作结果:构造一个圆。
double Area(C)
初始条件:圆已存在。
操作结果:计算面积。
double Circumference (g)
初始条件:圆已存在。
操作结果:计算周长。
......
}ADT Circle
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
2022-01-30 mysql操作数据库
2022-01-30 mysql命令行操作