数据结构(一)——基本概念和术语

数据结构基本概念和术语

文章目录

    • 数据结构基本概念和术语
        • 数据
        • 数据元素
        • 数据项
        • 数据对象
        • 数据元素与数据对象
        • 数据结构
        • 逻辑结构
        • 存储结构
        • 数据类型和抽象数据类型

数据

  • 能输入计算机且能被计算机处理的各种符号的集合
  • 信息的载体
  • 是对客观事物的符号化表示
  • 能够被计算机识别、存储和加工
  • 数值型的数据:整数、实数等
  • 非数值型的数据:文字、图像、图形、声音等

数据元素

  • 是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理
  • 也简称为元素,或称为记录、结点或顶点
  • 数据元素也可以由若干个数据项组成

数据项

  • 构成数据元素的不可分割的最小单元(像列表里面的学号、姓名等一个个单独的项,而其构成的一整行,即一个学生的所在行的信息即为数据元素)

数据对象

  • 是性质相同的数据元素的集合,是数据的一个子集

数据元素与数据对象

  • 数据元素——组成数据的基本单位,与数据的关系:是集合的个体
  • 数据对象——与数据的关系:是集合的子集

数据结构

  • 数据元素相互之间的关系称为结构
  • 是指相互之间存在一种或多种特定关系的数据元素集合,或者说,数据结构是待结构的数据元素的集合
  • 数据元素之间的逻辑关系,也称为逻辑结构
  • 数据元素及其关系在计算机中的内存表示(又称为映像),称为数据的物理结构或数据的存储结构
  • 逻辑结构是数据结构的抽象,存储结构是数据结构的实现

逻辑结构

第一种划分方式:

(1)线性结构

  • 有且只有一个开始和终端结点,并且所有的节点最多只有一个直接前趋和一个直接后继,例如:线性表、栈、队列、串

(2)非线性结构

  • 一个结点可以有多个直接前趋和直接后继,例如:树、图

第二种划分方式:
(1)集合结构:同属于一个集合,没有其他关系
(2)线性结构:一对一
(3)非线性结构:一对多(树)
(4)图状或网状结构:多对多

存储结构

<1>.顺序存储结构

  • 用一组连续的存储单元依次存储数据,逻辑关系由存储位置来表示

<2>.链式存储结构

  • 用一组任意的存储单元来存储数据元素,数据元素之间的逻辑关系用指针来表示,在存储这个元素时记录下了下一个元素的位置

<3>.索引存储结构

  • 在存储结点信息的同时,还建立了附加的索引表

<4>.散列存储

  • 根据结点的关键字直接计算出该结点的存储地址

数据类型和抽象数据类型

  • 数据类型是一组性质相同的值得集合以及定义于这个值集合上的一组操作得总称
  • 数据类型约束了数据得取值范围和操作空间
  • 抽象数据类型概念化
  • 抽象数据模型——指一组数据模型以及在此上的操作
  • 抽象数据类型得形式定义——由(D、S、P)三元组表示,D是数据对象、S是D上的关系集、P是对D得基本操作集
ADT 抽象数据类型名{
数据对象:<数据对象的定义>
数据关系:<......>
基本操作:<......>
}ADT 抽象数据类型名

基本操作定义格式说明:

  • 参数表:赋值参数,只为操作提供输入值,引用参数以&打头,除可提供的输入值外,还将返回操作结果
  • 初始条件:数据结构和参数应该满足的条件,可省略
  • 操作结果:返回结果

举例:

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)
 	初始条件:圆已存在
 	操作结果:计算周长
 }

总结:
数据结构(一)——基本概念和术语_第1张图片

你可能感兴趣的:(学习,笔记,学习,算法,数据结构)