《数据结构》研究生入学考试学习大纲
一、课程的地位与作用 《数据结构》课程是计算机专业的核心课程之一,是一门综合性的专业基础课,它介于数学,计算机硬件,计算机软件之间。是高级程序设计语言,编译原理,操作系统,数据库,人工智能等课程的基础。同时,数据结构的技术也广泛应用于信息科学、系统工程,应用数学,以及各种工程技术领域。
| |||||||||||||
二、课程的教学目标与基本要求 课程目的是使学生了解计算机应用中数据对象的特性,学会在应用中, 根据现实世界中的问题选择适当的数据逻辑结构和存储结构以及相应算法, 并且培养基本的、良好的程序设计技能。 三、课程内容(重点△,难点★) 1 绪论1.1 数据结构的有关概念1.2 数据结构发展概况1.3△关于算法及算法的分析1.3.1算法 1.3.2 算法设计要求 1.3.3 ★时间复杂度 2线性表 2. 1 线性表的逻辑结构2. 2 △线性表的顺序存储结构及运算实现2. 3 △线性表的链式存储结构及运算 2. 4 ★一元多项式的表示及相加3 栈和队列3.1 栈的定义及运算3.2 △栈的存储结构及运算实现3.3栈应用举例3.4 队的定义及运算3.5 △队的存储结构及运算实现3.5.1 队的链式存储和运算 3.5.2 循环队---队的顺序存储和运算 4 数组4.1 数组的定义4.2 ★稀疏矩阵的三元组表示及有关算法4.3 稀疏矩阵的十字链表表示及相加5 树和二叉树5.1 树的定义及有关术语5.2 △二叉树5.2.1 二叉树的定义 5.2.2 二叉树的性质 5.2.3 二叉树的存储结构 5.3 △二叉树的遍历算法及线索二叉树5.3.1 二叉树的遍历 5.3.2 ★线索二叉树 5.4 树和森林5.4.1 树的存储结构 5.4.2森林与二叉树的转换 5.4.3树和森林的遍历 5.5 哈夫曼树及其应用5.5.1 哈夫曼树 5.5.2 哈夫曼编码 6 图6.1 图的定义及逻辑结构、存储方法6.2 △图的遍历算法6.2.1 图的深度优先搜索 6.2.2 图的广度优先搜索 6.3 △无向图的连通性6.3.1 无向图的连通分量 6.3.2 无向图的生成树 6.3.3 ★最小生成树 6.4 △有向无环图及其应用6.4.1 拓扑排序; 6.4.2 ★关键路径 6.5 △★单源点最短路径7 查找7.1 △静态查找表7.1.1 顺序表的查找 7.1.2 有序表的折半查找 7.1.3 索引顺序表的查找 7.2 △动态查找表7.2.1 二叉排序树 7.2.2 ★平衡二叉树 7.2.3 ★B-树 7.3 △哈希表 8 △内部排序8.1 排序的概念8.2 插入排序8.2.1 直接插入排序 8.2.2 插入排序 8.2.3 希尔排序 8.3 快速排序8.4 选择排序8.4.1 简单选择排序 8.4.2 堆排序 8.5各种内部排序方法的比较
| |||||||||||||
四、时间分配 | |||||||||||||
课程分 段标识 | 序号 | 教 学 内 容 | 教学环节(学时) | ||||||||||
讲 课 | 习 题 | 实 验 | 上 机 | 课 外 | 小 计 | ||||||||
1 | 绪论 | 2 | 2 | ||||||||||
2 | 线性表 | 5 | 3 | 7 | |||||||||
3 | 栈和队列 | 4 | 7 | ||||||||||
4 | 数组 | 4 | 4 | ||||||||||
5 | 树和二叉树 | 7 | 3 | 10 | |||||||||
6 | 图 | 7 | 7 | ||||||||||
7 | 查找 | 7 | 2 | 7 | |||||||||
8 | 内部排序 | 4 | 4 | ||||||||||
9 | |||||||||||||
10 | |||||||||||||
11 | |||||||||||||
12 | |||||||||||||
13 | |||||||||||||
14 | |||||||||||||
15 | |||||||||||||
16 | |||||||||||||
17 | |||||||||||||
18 | |||||||||||||
19 | |||||||||||||
20 | |||||||||||||
21 | |||||||||||||
22 | |||||||||||||
23 | |||||||||||||
24 | |||||||||||||
25 | |||||||||||||
26 | |||||||||||||
27 | |||||||||||||
28 | |||||||||||||
总 计 | 40 | 8 | 48 | ||||||||||
五、课程说明 | |||||||||||||
课程英文名称 | Data Structure | ||||||||||||
主要先修课程 | C++程序设计 | ||||||||||||
适用专业类别 | 计算机科学与技术 | ||||||||||||
主要教材(作者、教材名称、出版社) | “数据结构” 严蔚敏、吴伟民 清华大学出版社 | ||||||||||||
考核方式 | 考试 | ||||||||||||
课程简介 | 各种类型的数据结构和查找,排序的各种方法 | ||||||||||||
必 开 实 验 项 目 | 序号 | 项 目 名 称 | 学时 | ||||||||||
1 | 线性表链式存储结构的应用 | 3 | |||||||||||
2 | 二叉树 | 2 | |||||||||||
3 | Hash表应用 | 2 | |||||||||||
4 | |||||||||||||
5 | |||||||||||||
6 | |||||||||||||
7 | |||||||||||||
8 | |||||||||||||
操作系统
1操作系统引论
1.1操作系统的目标、作用和类型
1.2操作系统的发展与分类
1.3操作系统的功能与组成
1.4市场上常用的操作系统的介绍
2进程的描述与控制
2.1进程的描述
2.1.1进程的定义
2.1.2进程的状态
2.2进程的控制
2.2.1 原语
2.2.2 进程控制的几个基本原语
3进程的同步与通信
3.1进程同步的基本概念
3.1.1临界资源
3.1.2临界区
3.1.3硬件和软件解决进程互斥
3.2信号量机制
3.2.1 整型信号量
3.2.2记录型信号量
3.2.3经典进程同步问题
3.3进程通信
3.3.1 进程通信类型
3.3.2直接通信和间接通信
3.3.3消息通信机制
3.3 线程的基本概念
4调度与死锁
4.1调度的类型和模型
4.1.1 调度类型
4.1.2调度队列模型
4.1.3调度方式选择的准则
4.2常用的进程调度算法
4.3死锁的基本概念
4.3.1 死锁的原因
4.3.2产生死锁的必要条件
4.3.3处理死锁的基本方法
4.4死锁的预防和避免
4.4.1 死锁的预防
4.4.2 系统的安全状态
4.4.3银行家算法
5存储器管理
5.1程序的装入和连接
5.2连续分配存储管理方式
5.2.1 单一连续分配
5.2.2固定分区分配
5.2.3动态分区分配
5.2.4动态重定位
5.3对换
5.3.1多道程序环境的对换
5.3.2对换空间管理
5.3.3进程的换入与换出
5.2分页存储管理
5.4.1分页存储管理的基本方法
5.4.2地址变换机构
5.4.3两级和多级页表
5.3分段存储管理
5.5.1分段存储管理的引入与原理
5.5.2段页式存储管理
6虚拟存储器
6.1虚拟存储的基本概念
6.2请求分页存储管理
6.2.1请求分页硬件支持
6.2.2页面分配
6.2.3页面调入策略
6.3页面置换
6.3.1最佳和先进先出算法
6.3.2LRU算法
6.3.3Clock算法
6.3.4其它置换算法
6.4请求分页系统的性能问题
6.4.1 工作集
6.4.2 抖动及其预防
6.5请求分段存储管理
7设备管理
7.1I/O系统的组成
7.1.1I/O系统的结构
7.1.2I/O设备
7.1.3I/O设备控制器
7.1.4I/O通道
7.2I/O控制方式
7.2.1程序I/O
7.2.2中断驱动I/O
7.2.3DMA
7.2.4I/O通道方式
7.3缓冲区的作用与管理
7.4设备分配
7.4.1数据结构
7.4.2分配考虑因素
7.4.3设备独立性
7.4.4独占设备的分配
7.4.5SPOOLing技术
7.5设备处理
7.5.1设备驱动程序的功能和特点
7.5.2设备驱动和中断处理程序的处理过程
8文件系统
8.1文件和文件系统
8.1.1文件的分类
8.1.2文件的基本操作
8.2文件的逻辑结构
8.3目录管理
8.4文件共享
8.4.1文件共享的必要性
8.4.2常用的共享方式
8.5文件保护
8.5.1文件保护的重要性
8.5.2文件保护的几种方案
9磁盘存储器管理
9.1磁盘I/O
9.2外存分配
9.3 空闲存储空间的管理
10UNIX操作系统分析
10. 1UNIX综述
10.2UNIX进程控制子系统
10.3UNIX文件系统子系统
参考书籍 1) 《计算机操作系统(第三版)》西安电子科技大学出版社
汤子赢
2) 操作系统概念(中译版) (六版) 高等教育出版社
PeterBaer Galvin