数据结构知识点
文章目录
第一章 绪论
1.基本概念
-
数据(Data):是客观事物的符号表示,是所有能输入到计算机中并被计算机程序处理的符号的总称。
-
数据元素(Data Element):是数据的基本单位,在计算机中通常作为一个整体进行考虑和处理。
-
数据项(Data Item):是组成数据元素的、有独立含义的、不可分割的最小单位。
-
数据对象(Data Object):是性质相同的数据元素的集合,是数据的一个子集。
-
数据结构(Data Structure):是相互之间存在一种或多种特定关系的数据元素的集合。包括逻辑结构和存储结构两个层次。
(1) 逻辑结构:数据的逻辑结构是从逻辑关系上描述数据,它与数据的存储无关,是独立于计算机的。
(2) 存储结构:数据对象在计算机中的存储表示,是逻辑结构在计算机中的存储表示。分为顺序存储结构和链式存储结构。 -
数据类型(Data Type):是一个值的集合和定义在这个值集上的一组操作的总称。
-
抽象数据类型(Abstract Data Type,ADT):一般指用户定义的、表示应用问题的数学模型。
2. 算法和算法分析
-
算法(Algorithm):为了解决某类问题而规定的一个有限长的操作系列。
-
算法时间复杂度:表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同。受问题规模和语句频度影响。
常量阶<对数阶<线性阶<线性对数阶<平方阶<立方阶<指数阶 -
算法空间复杂的:算法所需存储空间的度量。
-
原地工作:算法执行时所需要的辅助空间相对于输入数据量而言是个常数。
第二章 线性表
1.基本概念
- 线性表:由n (n>=0) 个数据特性相同的元素构成的有限序列。分为顺序表和链表。
- 顺序表:指的是用一组地址连续的存储单元依次存储线性表的的数据元素。