大发快三公式_【二】、什么是抽象数据类型

  • 时间:
  • 浏览:2
  • 来源:北京新闻网_北京主流媒体_北京门户网站

前言

在上一篇【那先 是数据形态学 】中我完整性介绍了我对数据形态学 的理解,嘴笨 描述数据形态学 ,兩个 很好的最好的办法 叫抽象数据类型。下面我会完整性介绍抽象数据类型

抽象数据类型

抽象数据类型英文叫石(Abstract Data Type),这里兩个 关键词,一个 叫“数据类型”,一个 叫“抽象”,它们分别是那先 意思呢?首先说那先 是数据类型呢?

数据类型,它涵盖了一个 东西,一个 是“数据对象集”,我想要 我想要 亲戚亲戚大伙说的“是那先 东西”,第3个是“数据集合相关联的操作集”,就上我在上一篇中说的,亲戚亲戚大伙只有单纯讲为何会 去处置图书,亲戚亲戚大伙是要对那先 图书进行操作的,这两件事情:图书的摆放,对图书的操作,是紧密结合在一同的。你这名个 东西在C语言里是独立处置的,我想要在我想要 面向对象的语言后面 ,比如C++、Java,你就会发现,它们很好的为数据类型专门设计了某种 机制,我想要 我想要 一个 “”,把你这名 数据集跟它相关的操作集封装进去 一个 类后面 。

那再说那先 是抽象呢?

抽象,抽象的意思我想要 我想要 “不具体”,我想要 我想要 说,描述数据类型的最好的办法 是不依赖于具体的实现的,对一个 数据类型的描述,它跟

  • 存放数据的机器无关
  • 跟数据存储的物理形态学 无关
  • 实现操作的算法和编程语言皆无关

总体来说,亲戚亲戚大伙只描述数据对象集和相关的操作集"是那先 ",亲戚亲戚大伙不关心“它是为何会 做到的”你这名 大大问题。机会到现在我想要 没有 基础的亲戚亲戚大伙看起来还是很抽象,没关系,我再举个例子,机会帮助你更好的理解抽象数据类型到底是个那先 东西,你这名 例子是关于“矩阵”的抽象数据类型的定义。

首先亲戚亲戚大伙要给你这名 抽象数据类型一个 名称叫“矩阵”,我想要亲戚亲戚大伙要描述一下它的数据对象集,一个 NM的矩阵,是由NM个矩阵的元素构成的,亲戚亲戚大伙把你这名 元素描述成一个 三元组a,i,j,其中a是你这名 矩阵元素的值,一同亲戚亲戚大伙还时要知道你这名 矩阵元素在矩阵后面 处在的位置,我想要 我想要 它的行号i和列号j,就我想要 我想要 描述了一个 数据的对象集,相关联的操作集有我想要 我想要 我想要 我想要 (如下图)



亲戚亲戚大伙来看一下,为那先 你这名 就叫做“抽象”的表示呢?首先亲戚亲戚大伙来看,在描述数据对象集的我想要 ,说a是矩阵元素的值,那你这名 值是float?还是double?还是int?亲戚亲戚大伙在你这名 抽象数据类型中描述是不关心的,相应地,当时要对它的元素值进行操作的我想要 ,亲戚亲戚大伙返回的也是ElementType,是一个 通用的元素类型,我在实现你这名 矩阵相关的所有函数的我想要 ,我在面前写一个 define,你时要那先 ,让他把它define(定义)成那先 样子,我想要 我想要 语句,你实现的那先 函数是跟“你那个矩阵元素到底是哪种类型”是没有 关系的,哪种类型时会都可不可以 运算的。这就处置了你对int实现了一遍,下一次矩阵变成double类型的,结果你又对double……难道重新写一遍吗?当然你说我时要直接用一个 replace(替换),我把所有的int替加带double,呃……你这名 我时要注意,我想要 地方的int真的我想要 我想要 int,你只有加带double,我想要 我想要 机会会出错,总的来说呢,我想要 我想要 机会你当时人一个 一个 地去替换你这名 元素的类型语句,会很麻烦,而抽象一下我想要 我想要 有你这名 好处,这是一个 好处。另外一个 呢,像你这名 矩阵,亲戚亲戚大伙我想要 我想要 说这是一个 M*N的矩阵,至于在应用应用程序后面 它是怎样才能一个 存法?亲戚亲戚大伙是用二维数组去存它?还是一维数组?还是用链表?你这名 亲戚亲戚大伙在抽象数据类型定义的我想要 ,时会不关心的。我不管它是为何会 实现的,我我想要 我想要 说:我时要实现的是一个 矩阵。再比如说后面 图片中的Add()函数,机会它们都可不可以 相加语句,我时要返回它们的和,我想要 我想要 可没说,在我算你这名 矩阵加法的我想要 ,到底是先按行加呢?还是先按列加呢?我到底是用那先 语言去实现你这名 函数呢?我想要 我想要 我想要 我想要 不管,这我想要 我想要 所谓的抽象。

此篇完

到这抽象数据类型我想要 我想要 完了,嘴笨 你这名 篇我想要 我想要 对数据形态学 的另某种 描述,我时要看过这语句亲戚亲戚大伙们应该对数据形态学 有个清晰的认识了吧。提前做个预告,下篇就现在开始英文英文英文说算法了,跟我想要 一样,我会清清楚楚描述,明明白白表达,我相信我的认真配得上您的关注。

 【原创声明】:当时人原创:https://www.cnblogs.com/zyx110/