第一章 基本概念
数据结构起源
数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间关系和操作等相关问题的学科
数据
数据是描述客观事物的符号
数据元素
组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理,也别称为记录
数据项
一个数据元素可以由若干个数据项组成,是数据不可分割的最小单位
数据对象
性质相同的数据元素的集合 是数据的子集
数据结构
相互之间存在的一种或多种特定关系的数据元素的集合
逻辑结构与物理结构
逻辑结构是面向问题的,而物理结构是面向计算机的,其基本的目标就是将数据及其逻辑关系存储到计算机内存中
逻辑结构
数据对象中的数据元素之间的相互关系,逻辑结构分为以下四种
- 集合结构
集合结构中的数据元素除了属于同一个集合外,无其他关系,平等存在 - 线性结构
数据元素之间是 一对一 的关系 - 树形结构
数据元素之间存在 一对多 的层次关系 - 图形结构
数据元素之间是 多对对 关系
物理结构(存储结构)
指数据的逻辑结构在计算机中的存储形式
- 顺序存储结构
把数据元素存放在地址连续的存储单元里, 其数据见的逻辑关系和物理关系是一直的
- 链式存储结构
把数据元素 存放在任意的存储单元里,这组存储单元可以是连续的,也可以不连续,通过指针找到相关元素
抽象数据结构 ADT
指一个数学模型及其定义在该模型上的一组操作,抽象的意义在于数据类型的数学抽象特性。
体现了程序设计中的问题分解、抽象和信息隐藏的特性
数据类型
指一组性质相同的值的集合及定义在此集合上的一些操作的总称
在C语言中,按取值的不同,数据类型分为两类
- 原子类型 :是不可再分解的基本类型 如整型、实型、字符型等
- 结构类型: 由若干个类型组合而成,可以在分割 如数组