思维导图
基本概念
-
数据
信息的载体,所有能够输入到计算机中并被计算机程序识别和处理的符号的集合
-
数据元素
数据的基本单位(整体)eg.学生记录
-
数据对象
相同性质的数据元素的集合 eg.整数
-
数据类型
一个值的集合+此集合的一组操作的总称
es.抽象数据类型(ADT)(数据对象、数据关系、基本操作集)可以定义一个完整的数据结构 -
数据结构
数据结构:相互之间存在一种或多种特定关系的数据元素的集合
数据结构三要素
- 逻辑结构
- 物理(存储)结构
- 数据的运算
逻辑结构与物理(存储)结构的关系
- 毫无疑问,这二者是密切相关的
- 逻辑结构描述元素间的逻辑关系,以实际问题出发,构建抽象表达式,所以 逻辑结构独立于存储结构
- 而物理结构是逻辑结构在计算机上的映射,不能独立于逻辑结构存在
逻辑结构(后续)
物理(存储)结构对比
| 特征 | 优点 | 缺点 | |
|---|---|---|---|
| 顺序存储 | 逻辑上相邻的元素物理位置也相邻 | 可以随机存储 | 只能使用相邻的储存单元,可能产生较多的外部碎片 |
| 链式存储 | 不要求逻辑上相邻的元素,物理位置也相邻,借助指示元素存储地址的指针来表示元素之间的逻辑关系 | 无碎片现象,能充分利用所有存储单元 | 存储指针需要额外的空间,且只能顺序存取 |
| 索引存储 | 存储元素信息的同时,建立附加的索引表索引表中的每一项称为索引项(关键字,地址) | 检索速度快 | 索引表需要额外的存储空间,维护索引表(增加、删除数据)需要额外的时间 |
| 散列存储 | 根据元素的关键字直接计算出元素的存储地址 | 检索、增加、删除等操作快 | 散列函数不好可能导致元素存储单元冲突 |