浙江大学数据结构(1.1.4抽象数据类型)

所以到底什么是数据结构???

  • 数据对象在计算机中的组织方式
  1. 数据的逻辑结构(线性表、树、图)
  2. 物理存储结构
  • 数据对象必定与一系列加在其上的操作相关联
  • 完成这些操作所用的方法就是算法

 抽象数据结构类型(Abstract Data Type)

  • 数据类型
  1. 数据对象集
  2. 数据集合相关联的操作集
  • 抽象:描述数据类型的方法不依赖于具体实现
  1. 与存放数据的机器无关
  2. 与数据储存的物理结构无关
  3. 与实现操作的算法和编程语言无关
  4. 只描述数据对象集和相关操作集“是什么”,并不涉及“如何做到”的问题

例4:“矩阵”的抽象数据类型定义

  • 类型名称:Matrix
  • 数据对象集:一个M×N的矩阵由M×N个三元组<a,i,j>构成,其中a是矩阵元素的值,i是行号,j是列号
  • 操作集:
  1. Matrix Create(int M,int N):返回M×N的空矩阵
  2. ElementType GetEntry(Matrix A,int i,int j):返回矩阵A的第i行j列元素
  3. Matrix Add(Matrix A,Matrix B):如果行列一致,返回C=A+B;否则返回错误标志
  • 抽象在哪?
  1. 不考虑元素a的类型
  2. 不考虑矩阵A的储存方式(二维数组?一维数组?十字链表?)
  3. 实现矩阵加法时,不考虑运算方法,使用何种语言(先按行?按列?)

猜你喜欢

转载自blog.csdn.net/weixin_42681308/article/details/88086846