第一章、基本概念(这一章最主要的还是考概念)
一、
- 1、数据:如整个程序有两张图,那这两张图就是数据
- 2、数据对象:如一张图
- 3、数据元素:如图结点的结构体
- 4、数据项:是数据不可分割的最小单位,如结构体里面的int型
- 5、他们四者的关系如下:
二、
- 1、数据结构:相互之间存在一种或多种特定关系的数据元素的集合,,分为:逻辑结构和物理结构(存储结构)
- 2、逻辑结构:这个数据结构的定义仅是对操作对象的一种数学描述,换句话说,是从操作对象抽象出来的数学模型。结构定义中的“关系”描述的是数据元素之间的逻辑关系,因此又称为数据的逻辑结构。分为:集合,线性,树形,图形(即线性与非线性)
- 3、物理结构:数据结构在计算机中的表示(又称印象)称为数据的物理结构,又称存储结构,,分为链式,和顺序存储
三、
抽象数据类型:可以使用一个三元组来表示:ADT=(D,S,P) D是数据对象,S是D上的关系集,P是加在D上的一组操作所以在C语言中为规范化的命名实现抽象数据类型,我们会使用到:#define,结构体,typedef
四、
- 1、算法的5个重要特性:有穷,确定,可行,输入,输出
- 2、好的算法的目标(或算法设计的要求):正确,可读,健壮,效率与低存储量需求
- 3、算法运行时间取决于:
(1). 算法采用的策略、方法;(2). 编译产生的代码质量;(3).问题的输入规模;(4).机器执行指令的速度;(5).书写程序的语言,,,注意:不取决于执行算法的计算机速度 - 4、算法的时间量度与渐进时间复杂度(简称:时间复杂度):这两个是一样的吗???
- 5、对数阶O(log n),常量阶O(1),线性阶O(n),平方阶O(n平方)…,指数阶O(2的n次)
- 6、空间复杂度
第二章、线性表
一、这一章没有太多要记得概念性的东西,不像上一章,所以主要零散记一些可能对我来说偏不容易被注重的知识点
- 1、物理结构是线性的
- 2、在稍复杂的线性表中&#