抽象数据类型

抽象数据类型是指一个数学模型以及定义在此数学模型上的一组操作,简称ADT,(Abstract Data Type)。

ADT与具体的物理存储无关,不论ADT内部如何变化,都不影响外部使用。

抽象数据类型可以使我们更容易描述现实世界。

数据结构的本质就是抽象数据类型的物理实现。

抽象数据类型的定义格式:

ADT<抽象数据类型名>
{
    数据对象D:<数据对象的定义>
    数据关系R:<数据关系的定义>
    基本操作P:<基本操作的定义>
}ADT<抽象数据类型名>

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

抽象数据类型的定义解决的是一个数据结构的逻辑结构的问题,也就是说抽象数据类型的定义表示了一个数据结构的逻辑结构。

基本操作的定义格式:

基本操作名(参数表)
初始条件:<初始条件描述>
操作结果:<操作结果描述>

抽象数据类型抽象出了数据结构本质的特征,所能完成的功能以及它和外部用户的接口。同时,将实体的外部特性和其内部实现细节分离,并且对外部用户隐藏其内部实现细节。

数据结构-抽象数据类型相关推荐

  1. 数据结构--抽象数据类型三元组Triplet的表示和实现

    抽象数据类型三元组Triplet的表示和实现. 数据类型是一个值的集合和定义在这个值集上的一组操作的总称.按"值"的不同特性,高级程序语言中的数据类型可分为两类:一类是非结构的原子 ...

  2. (笔记)数据结构--抽象数据类型的定义

    例子

  3. C语言抽象数据类型实现复数的加减乘运算、输入实部虚部输出复数,输入复数输出实部虚部

    运行结果 #include<stdio.h> #include<stdlib.h> //头文件 typedef struct Complex //定义结构体类型Complex ...

  4. 数据结构第一次作业——抽象数据类型

    1.作业内容(1分) ADT Rational{ 数据对象:D={e1,e2|e1,e2都是Elemtype类型} 数据关系:R={<e1,e2>} 基本操作:Builtration(&a ...

  5. 数据结构简介以及抽象数据类型的实现

    数据结构简介 数据结构(英语:data structure)是计算机中存储.组织数据的方式. 数据结构意味着接口或封装:一个数据结构可被视为两个函数之间的接口,或者是由数据类型联合组成的存储内容的访问 ...

  6. 【Python数据结构】 抽象数据类型 Python类机制和异常

    这篇是<数据结构与算法Python语言描述>的笔记,但是大头在Python类机制和面向对象编程的说明上面.我也不知道该放什么分类了..总之之前也没怎么认真接触过基于类而不是独立函数的Pyt ...

  7. 数据、数据元素、数据项、数据对象、数据结构、逻辑结构、存储结构、抽象数据类型的概念

    数据: 是客观事物的符号表示,指所有能输入到计算机中并被计算机程序处理的符号的总称.如数学计算中用到的整数和实数,文本编辑所用到的字符串,多媒体程序处理的图形.图像.声音.动画等通过特殊编码定义后的数 ...

  8. c语言 数据结构 list、queue、tree抽象数据类型的定义与实现 详尽代码和注释

    本文使用c语言定义并实现list.queue.tree抽象数据类型,代码有详尽注释,可以通过代码熟悉原理并运用数据结构. 0.ADT基础知识 类型包括两类信息,属性和操作.在编程时,根据编程问题匹配合 ...

  9. 数据结构的基本概念和抽象数据类型

    1.基本概念和术语 数据:是对客观事物的符号表示. 数据元素:数据的基本单位,一个数据元素可由若干个数据项组成,数据项是数据的不可分割的最小单位 数据对象:性质相同的数据元素的集合是数据的一个子集 数 ...

最新文章

  1. SQLALchemy之Python连接MySQL
  2. VTK:Rendering之InterpolateCamera
  3. 用SD卡下载uboot、linux内核和文件系统
  4. [zz]为 Lua 绑定 C/C++ 对象
  5. 深度学习在轨迹数据挖掘中的应用研究综述
  6. python生成倒计时图片_python pygame--倒计时
  7. 原生ajax 和jquery ajax 个人总结
  8. FZU 1692 Key problem
  9. android创建项目,并开发项目。
  10. SQL还原数据库剔除占用
  11. 计算机的com端口万能驱动,USB转串口万能驱动
  12. java邮件数据库_javamail-demo(完整源码+数据库)
  13. 一文入门 Spring Cloud Tencent
  14. 【转】清华梦的粉碎 - 写给清华大学的退学申请
  15. 【UE4】导入FBX格式的模型至UE4
  16. Java Excel文件内容替换
  17. Redis数据结构:快速的Redis有哪些慢操作?
  18. 深度至尊GHOST_XPSP3快速装机专业版V8.0
  19. java中jar文件
  20. 车载以太网测试:从入门到入土

热门文章

  1. 【3分钟秒懂】结合汇编代码解析C函数入参与PowerPC芯片寄存器的关系
  2. 比ChatGPT还好用?亚马逊或将为卖家提供官方AI工具
  3. linux卸载apache服务器,linux下卸载apache
  4. 解决:QWidget: Must construct a QApplication before a QWidget
  5. 【C++篇】OOP中部分:继承和派生
  6. 金牌汉马首推人脸识别直播,Sioeye开启马拉松新时代
  7. Java技术开发交流V群
  8. vue生命周期beforeCreate()前做了什么
  9. c语言中双反斜杠的作用,[转载]C语言中反斜杠的使用
  10. Barsetto百胜图智能胶囊咖啡机测评香浓不必久候