目录
什么是数据结构
数据是信息的载体;星系是数据的内涵。
(元素、结点、记录)数据元素:数据基本单位。
数据对象:具有相同数据类型的数据元素的集合。
(字段、域、属性)数据项:具有独立意义的不可分割的最小标识单位。
数据结构:相互之间存在的一种或多种特定关系的数据元素的集合。
数据结构=数据(点)+结构(线)
数据结构包含:A.数据逻辑结构B.数据存储结构C.数据运算。
逻辑结构
定义:数据元素之间的逻辑关系的整体。(逻辑关系主要指相邻关系)
4个基本结构:
A.集合:最松散的数据结构;
B.线性结构:元素一对一;
C.树状结构:元素一对多;
D.图形结构(网状结构):元素多对多。
描述方法:A.二元组B.关系图(逻辑结构图)
二元组:
直接后继元素(后继元素)
直接前驱元素(前驱元素)
终端元素
开始元素
内部元素
存储结构
又称(存储表示、物理结构)
定义:数据逻辑结构在计算机存储器中的表示。
4种主要存储结构:
A.顺序存储结构:相邻关系、直接映射、节省存储空间、不便于修改。
B.链式存储结构:单独存储、指针、存储空间利用率比较低。
C.索引存储结构:存储数据的同时附加索引表,关键字、查找效率高、缺点:需要建立索引表。
D.哈希(散列)存储结构:根据元素关键字确定其存储地址,哈希函数、存储地址。只存储数据本省不存储逻辑关系。
数据运算
定义:施加于数据的操作。
包含:运算定义(抽象)和运算实现(具体)。
数据结构、数据类型和抽象数据类型
数据结构
定义:带结构的数据元素的集合。
包含:数据逻辑结构、存储结构、数据运算。
数据类型
A.基本数据类型
本次常用数据类型(char、int)
作用:定义变量。
自动变量
B.指针类型
C.数组类型
D.结构体类型
E.共用体类型
F.自定义类型
抽象数据类型
算法及其描述
算法是计算机解决问题的方法。
算法的特性(考点)
算法设计5目标:
1.正确性;
2.可使用性;
3.可读性;
4.健壮性(容错性);
5.高效率和低储存量的需求(和实际需要解决的问题有关)。
算法5特性:
1.有限性/有穷性:计算机系统能够跑出来:
2.确定性:
3.可行性:
4.输入性:
5.输出性。
算法的描述
like代码。
C语言没有提供实参到形参的双向传递。
算法分析
作用:用于判断算法的好坏。
算法时间复杂度分析
相对的。
判断时找准基本运算语句,
基本运算语句一般在最内层,
总结就是“找准,推导,找高阶。”
算法空间复杂度分析
即运行时所耗费的内存。