注: 应付期末考用的
2022.2.17课堂笔记
第一章 绪论
考选择/填空
1.2.1 数据、数据元素、数据项和数据对象
(1)数据:描述客观事物的符号记录。
(2)数据元素:数据的基本单位。
(3)数据项:数据的最小单位。
(4)数据对象:性质相同的数据元素的集合(同一张表)。
1.2.2 数据结构
(5)数据结构:具有一定关系的数据元素的集合(不同表)。
1、数据的层次表示:逻辑结构与物理结构
2、逻辑结构:掌握四种图的表示
物理结构:(1)顺序存储的公式
(2)链式存储
1)定义:分为数据域和指针域
2)特点:根据指针来进行存储
例题(必考这种题型):顺序表中第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是()
A.110 B.108 C.100 D.120
答案:B
解析:第一个元素 代表 a1 ,a1=100,
每个元素的长度 代表 n ,n=2
第5个元素 代表 i , i=5
带入公式
1.2.3 数据类型和抽象数据类型
(1)数据类型
一般类型:整型、实型、字符型
(2)抽象数据类型(考:ADT包含的三要素是什么?)
数据对象、数据关系、数据操作 十二个字要记住
1.3抽象数据类型的表示
(3)掌握四个常见的关键词 ElemType Status new delete
数据元素类型 ElemType 由用户在使用该数据类型时自行定义
当函数返回值为函数结果状态代码时 ,函数定义为 status 类型
内存的动态分配与释放 使用 new 和 delete 动态分配和释放内存空间:、
分配空间 指针变量=new数据类型
释放空间 delete指针变量
1.4.1 算法的定义及特性(考:下列不是算法的特点是哪一个)
(1)算法:完成一件事所经历的步骤
(2)算法五特点 :
输入性:零个或多个
输出性:一个或多个
有穷性
正确性
可行性
2022年2月22日 星期二
课堂笔记
1.4.3 算法的时间复杂度
1.4.4 算法的空间复杂度
2、时空复杂度求解 (必考)
(1)语句频度:次数
(2)问题规模:n
2.1 时间复杂度的公式
常量阶
线性阶
平方阶
立方阶
2.2 空间复杂度的公式
第2章 线性表
2.1线性表的定义和特点 (考)
2.1.1形式
(1)结点形式
(2)括号形式 ( ) 空表长度为0
2.1.2 线性结构的特点:
线性结构:线性表、栈、队列、串、数组、广义表。
(1)只有一个首结点和尾结点
(2)除首尾结点外,其他结点有且只有一个前驱结点和一个后继结点
2022年2月24日星期四
课堂笔记
2.4线性表的顺序表和实现
2.4线性表的顺序表示——顺序表
1、顺序表的数据元素的存储位置
2、顺序表的定义:逻辑相邻、物理也相邻
3、顺序表的存储:数组
4、顺序表的类型定义:
初始化 InitList
返回元素 GetElem
获取元素 LocateElem
插入元素 ListInsert
删除元素 ListDelete
5、顺序表的基本操作(程序段)期末必考五分
1、初始化
L.elem =new ElemType[MAXSIZE];
L.length=0;
2、取值
e=L.elem[i-1];
3、查找
if(L.elem[i]==e) return i+1;
4、插入
L.elem[j+1]=L.elem[j];
L.elem[i-1]=e;
++L.length;
插入第4个结点之前,移动6-4+1次
插入第 i 个结点之前,移动n-i+1次
5、删除
L.elem[j-1]=L.elem[j];
--L.length;
学习方法小tips:
L. 读作 L的
每天记一点点 ,反正做什么事情要易到难,后面越积越多,每天的内容要消化。