#第一章 绪论 数据结构介于数学、计算机硬件和计算机软件三者之间的一门核心课程。
1.2基本概念和术语
1.2.1数据、数据元素、数据项和数据对象
- 数据(data):所有能输入到计算机中去的描述客观事物的符号
- 数据元素(data element):数据的基本单位,也称结点(node)或记录(record)
- 数据项(data item):有独立含义的数据最小单位,也称域(field)
三者之间的关系:数据>数据元素>数据项
- 数据对象(data Object):相同特性数据元素的集合,时数据的一个子集
- 数据结构(data Structure):是相互之间存在一种或多种特定关系的数据元素的集合
1.2.2数据结构
数据结构是带“结构”的数据元素的集合,“结构”就是指数据元素之间存在的关系
-
逻辑结构
数据的逻辑结构是从逻辑关系上描述数据,他与数据的存储无关,独立于计算机
(1)集合结构
(2)线性结构
(3)树结构
(4)图结构或网状结构
-
存储结构
数据对象在计算机中的存储表示称为数据的存储结构,也称为物理结构
(1)顺序存储结构
顺序存储结构是借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系的,通常借助程序设计语言的数组类型来描述
(2)链式存储结构
顺序存储结构要求所有元素依次存放在一片连续的存储空间中,而链式存储结构,无需占用一整块内存空间。但为了表示节点之间的关系,需要给每个节点附加指针字段,用于存放后继元素的存储地址。所以链式存储结构通常借助于程序设计语言的指针类型来描述。
1.4算法和算法分析
1.4.1算法的定义及特性
算法是为了解决某类问题而规定的一个有限的操作序列
一个算法必须满足以下五个重要特性:
- 有穷性
- 确定性
- 可行性
- 输入
- 输出
1.4.2评价算法优劣的基本标准
- 正确性
- 可读性
- 健壮性
- 高效性