一个抽象数据类型的定义格式如下:
ADT 抽象数据类型名{
数据对象:<数据对象的定义>
数据关系:<数据关系的定义>
基本操作:<基本操作的定义>
}ADT 抽象数据类型名
其中:
-
数据对象、数据关系的定义用伪代码描述
-
基本操作的定义格式为:
- 基本操作名(参数表)
- 初始调降:<初始条件描述>
- 操作结果:<操作结果描述>
基本操作定义格式说明:
参数表:
- 赋值参数 只为操作提供输入值
- 引用参数 以&打头,除可提供输入值外,还将返回操作结果。
初始条件:
- 描述操作执行之前数据结构和参数应满足的条件,若不满足,则操作失败,返回相应出错信息。若初始条件为空,则省略之。
操作结果:
- 说明操作正常完成之后,数据结构的变化状况的应返回的结果。
举例:Circle的定义
ADT 抽象数据类型名{
Data
数据对象的定义
数据元素之间逻辑关系的定义
Operation
操作1
初始条件
操作结果描述
操作2
......
操作n
......
}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(C)
初始条件:圆已存在。
操作结果:计算周长。
......
}ADT Circle