码迷,mamicode.com
首页 > 其他好文 > 详细

抽象数据类型

时间:2018-06-17 17:58:43      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:原子类   引用   面向   实现   设计   它的   过程   个数   组成   

1.数据类型

数据类型(data type)是一个值的集合和定义在这个值集上的一组操作的总称。

  • 原子类型:如语言的整形、字符型等标准类型及指针等简单的导出类型和空类型。
  • 结构类型:其值是由若干成分按某种结构组成的,因此是可以分解的,并且它的成分可以是非结构的,也可以是结构的,通常是由标准类型派生的。例如,C/C++中的数组、结构等类型。

2.抽象数据类型(abstract data type, ADT)

抽象数据类型是指一个数学模型以及定义在该模型上的一组操作。它通常是指对数据的某种抽象,定义了数据的取值范围及其结构形式,以及对数据的操作的集合。

“抽象”的意义在于数据类型的数学抽象特性。

3.抽象数据类型的描述方法

(D,S,P)

D是数据对象,S是D上的关系集,P是对D的基本操作集。

4.抽象数据类型一般可以由数据对象、数据关系及基本操作来定义。

ADT  抽象数据类型

{

    数据对象(数据对象的定义)

    数据关系(数据关系的定义)

    基本操作(基本操作的定义)

}ADT 抽象数据类型名

其中,数据对象和数据关系的定义用集合描述,基本操作的定义格式为

    返回类型 基本操作名(参数表)

5.对于每个操作,包含下列5个基本要素:

  • 输入
  • 前置条件
  • 过程
  • 输出
  • 后置条件
6.基本操作有两种参数:赋值参数只为操作提供输出值;引用参数以&开头,除可提供输出值外,还将返回操作结果。

7.面向对象的程序设计(OPP)方法。

   在面向对象程序设计语言中,借助对象描述抽象数据类型,存储结构的说明和操作函数的说明被封装在一个整体结构中,这个整体结构称为类(class),属于某个类的具体变量称为对象(object)。

8.ADT和类的概念实际上反映了程序或软件设计的两层抽象:ADT相当于是在概念层(抽象层)上描述问题,而类相当于是在实现层上描述问题。

抽象数据类型与C++中类的对应关系如下:

                         抽象数据类型——类

                         数据对象——数据成员(属性)

                         基本操作——成员函数(方法)

 

抽象数据类型

标签:原子类   引用   面向   实现   设计   它的   过程   个数   组成   

原文地址:https://www.cnblogs.com/yinghuoshouxin/p/9193189.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!