山东建筑大学学术学位硕士研究生入学初试《计算机专业综合一》课程考试大纲
一、数据结构(占75分)
(一)绪论
1. 理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异;
2. 理解算法的概念、重要特性、设计要求,掌握算法的时间和空间复杂性分析。
(二)线性表
1. 理解线性表的定义和基本操作;
2. 掌握线性表顺序存储及基本操作实现;
3. 掌握线性表链式存储及基本操作实现,包括单链表、单向循环链表、双向循环链表的实现;
4. 了解静态线性表的概念;
5. 理解顺序存储和链式存储的优缺点及适用场合;
6. 掌握线性表的应用,如集合的并、交、差运算的实现,一元多项式求和等。
(三)栈和队列
1. 理解栈和队列的特性和它们之间的差异,掌握栈和队列的适用场合;
2. 掌握顺序栈和链栈定义及基本操作的实现;
3. 掌握循环队列和链队列定义及基本操作的实现;
4. 了解优先队列的概念和常用操作的实现;
5. 掌握栈和队列的应用。
(四)树与二叉树
1. 理解树的基本概念;
2. 掌握二叉树的定义及主要特征;
3. 掌握二叉树的顺序存储结构和链式存储结构;
4. 掌握二叉树的先序、中序、后序和层次遍历及遍历应用;
5. 理解树的存储结构;
6. 掌握树和森林的遍历、树和森林与二叉树的转换;
7. 掌握哈夫曼(Huffman)树和哈夫曼编码。
(五)图
1. 理解图的基本概念;
2. 掌握图的邻接矩阵和邻接表存储结构,掌握图的基本操作在两种存储结构上的实现;
3. 了解图的多重邻接表和十字链表存储结构;
4. 掌握图的深度优先遍历和广度优先遍历;
5. 掌握图的基本应用中的最小生成树(Prim和Kruskal)、最短路径(Dijkstra和Floyd)、拓扑排序算法及复杂性分析。
(六)查找
1. 理解查找的基本概念;
2. 掌握顺序查找法和查找性能分析;
3. 掌握折半查找法和查找性能分析;
4. 掌握二叉排序树的定义、构造、插入、删除及查找性能分析;
5. 理解二叉平衡树的定义及构造;了解B+树;
6. 掌握哈希(Hash)表的构造、查找及查找性能分析。
(七)内部排序
1. 理解排序的基本概念;
2. 了解直接插入排序、折半插入排序、简单选择排序;
3. 掌握希尔排序、快速排序、堆排序、归并排序、基数排序
4. 各种排序算法的比较,包括时间性能、空间性能、稳定性等。
二、操作系统(占75分)
(一)操作系统概述
1. 操作系统的概念、特性和功能;
2. 操作系统的发展与分类;
3. 操作系统中内核态与用户态、中断、系统调用等概念;
4. 操作系统的体系结构如微内核的概念。
(二)进程管理
(1)进程与线程
1. 进程的概念;
2. 进程的状态与转换;
3. 进程控制;
4. 进程组织;
5. 进程通信:共享存储系统;消息传递系统;管道通信;
6. 线程概念;
7. 用户级线程与内核支持级线程。
(2)处理机调度
1. 调度的基本概念;
2. 调度时机、切换与过程;
3. 调度的基本准则;
4. 调度方式;
5. 典型调度算法:先来先服务调度算法;短作业优先调度算法;时间片轮转调度算法;优先级调度算法;高响应比优先调度算法;多级反馈队列调度算法等。
(3)进程同步与互斥
1. 进程同步的基本概念;
2. 实现临界区互斥的基本方法:软件实现方法;硬件实现方法;
3. 使用信号量解决同步互斥问题;
4. 管程。
(4)死锁
1. 死锁的概念;
2. 形成死锁的四个必要条件;
3. 处理死锁的方法:死锁预防(破坏形成死锁的各个必要条件);死锁避免(系统安全状态:银行家算法);死锁检测和解除。
(三)内存管理
(1)内存管理基础
1. 内存管理概念:程序装入与链接种类与过程;逻辑地址与物理地址空间;
2. 交换与覆盖;
3. 连续分配管理方式:固定分区与动态分区;
4. 非连续分配管理方式:基本分页管理方式、基本分段管理方式、段页式管理方式、快表;
(2)虚拟内存管理:
1. 虚拟内存基本概念;
2. 请求分页管理方式;
3. 页面置换算法:最佳置换算法(OPT);先进先出置换算法(FIFO);最近最少使用置换算法(LRU);改进的时钟置换算法(CLOCK);
4. 页面分配策略;
5. 抖动:抖动现象;工作集;
6. 请求分段管理方式。
(四)输入输出(I/O)管理
(1)I/O管理概述
1. I/O设备接口、设备控制器、通道;
2. I/O控制方式:程序I/O、中断驱动I/O、直接存储器访问I/O和通道I/O;
3. I/O软件层次结构:中断处理程序、设备驱动程序、设备独立性软件、用户层I/O软件;中断服务程序和驱动程序的目的与过程。
(2)设备分配
1. 分配中使用的数据结构;
2. 独占设备的分配过程;
3. 设备独立性;
4. 假脱机技术(SPOOLing)。
(3)提高性能的高速缓存与缓冲区技术。
(五)文件管理
(1)文件系统基础
1. 文件概念;
2. 文件逻辑结构:顺序文件、索引文件、索引顺序文件;
3. 目录结构:文件控制块和索引节点、单级目录结构和两级目录结构、树形目录结构、目录的查询技术;
4. 文件共享及保护。
(2)磁盘组织与管理
1. 外存的组织方式/文件的物理机构:连续分配、链接分配(隐式链接与显式链接)、索引分配(含混合索引算法);
2. 磁盘存储空间管理:空闲表/链法、位示图法、成组链接法;
3. 磁盘调度算法:先来先服务、最短寻道、扫描及循环扫描等算法。
(六)操作系统接口
(1)接口类型;
(2)系统调用的概念、类型和实现;
三、参考书目
[1] 严蔚敏,吴伟民. 数据结构(C语言版)[M]. 北京:清华大学出版社
[2] (美)萨尼(Sahni,S.) 著,汪诗林等译. 数据结构、算法与应用(C++语言描述). 北京:机械工业出版社.
[3] 刘小晶、杜选主编. 数据结构——Java语言描述(第2版). 北京:清华大学出版社。
[4] 汤小丹,梁红兵,汤子瀛等.计算机操作系统(第四版)[M].西安电子科技大学出版社.2014年5月第4版
[5] 汤小丹等. 计算机操作系统学习指导与题解[M]. 西安电子科技大学出版社,2008年9月
[6] 操作系统考研辅导教程(计算机专业研究生入学考试全真 题解)[M]. 电子科技大学出版社,2010年9月第1版
山东建筑大学专业学位硕士研究生入学初试《计算机专业综合二》课程考试大纲
一、数据结构(占75分)
(一)绪论
1. 理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异;
2. 理解算法的概念、重要特性、设计要求,掌握算法的时间复杂性分析。
(二)线性表
1. 理解线性表的定义和基本操作;
2. 掌握线性表顺序存储及基本操作实现;
3. 掌握线性表链式存储及基本操作实现,包括单链表、单向循环链表和双向循环链表的实现;
4. 理解顺序存储和链式存储的优缺点及适用场合;
5. 理解线性表的应用,如有序表的合并,一元多项式求和等。
(三)栈和队列
1. 理解栈和队列的特性和它们之间的差异,掌握栈和队列的适用场合;
2. 掌握顺序栈和链栈定义及基本操作的实现;
3. 掌握循环队列和链队列定义及基本操作的实现;
4. 理解栈和队列的应用。
(四)树与二叉树
1. 理解树的基本概念;
2. 掌握二叉树的定义及主要特征;
3. 掌握二叉树的顺序存储结构和链式存储结构;
4. 掌握二叉树的先序、中序和后序遍历递归算法,掌握层次遍历算法,掌握遍历的应用;
5. 理解树的存储结构;
6. 掌握树和森林的遍历、树和森林与二叉树的转换;
7. 掌握哈夫曼(Huffman)树和哈夫曼编码。
(五)图
1. 理解图的基本概念;
2. 掌握图的邻接矩阵和邻接表存储结构,理解图的基本操作在两种存储结构上的实现;
3. 掌握图的深度优先遍历和广度优先遍历过程;
4. 掌握最小生成树(Prim和Kruskal)、单源点最短路径(Dijkstra)和拓扑排序算法过程。
(六)查找
1. 理解查找的基本概念;
2. 掌握顺序查找法和查找性能分析;
3. 掌握折半查找法和查找性能分析;
4. 掌握二叉排序树的定义、构造、插入、删除及查找性能分析;
5. 掌握哈希(Hash)表的构造、查找及查找性能分析。
(七)内部排序
1. 理解排序的基本概念;
2. 了解直接插入排序、折半插入排序、简单选择排序;
3. 掌握希尔排序、快速排序、堆排序、归并排序、基数排序的算法思想和排序过程;
4. 理解各种排序算法的比较,包括时间性能、空间性能、稳定性等。
二、操作系统(占75分)
(一)操作系统概述
1. 操作系统的概念、特性和功能,以及发展与分类;
2. 操作系统中内核态与用户态、中断、系统调用等概念;
3. 系统结构(微内核与宏内核);
(二)进程管理
(1)进程与线程
1. 进程的概念、状态与转换、进程控制;
2. 进程通信:共享存储系统;消息传递系统;管道通信;
3. 线程概念、用户级和内核支持级线程的实现。
(2)处理机调度
1. 调度的基本概念、基本准则、调度方式、调度时机;
2. 典型调度算法:先来先服务调度算法;短作业优先调度算法;时间片轮转调度算法;优先级调度算法;高响应比优先调度算法;多级反馈队列调度算法等。
(3)进程同步与互斥
1. 进程同步的基本概念;
2. 实现临界区互斥的基本方法:软件实现方法;硬件实现方法;
3. 使用信号量解决进程间的同步与互斥问题。
(4)死锁
1. 死锁的概念、形成死锁的四个必要条件;
2. 处理死锁的方法:死锁预防(破坏形成死锁的各个必要条件);死锁避免(系统安全状态:银行家算法);死锁检测和解除。
(三)内存管理
(1)内存管理基础
1.程序装入与链接过程;逻辑地址与物理地址空间;
2. 交换与覆盖;
3. 连续分配管理方式:固定分区和动态分区分配算法;
4. 非连续分配管理方式:基本分页管理方式;基本分段管理方式;段页式管理方式。
(2)虚拟内存管理:
1. 虚拟内存基本概念;
2. 请求分页管理方式、请求分段管理方式;
3. 页面置换算法:最佳置换算法(OPT);先进先出置换算法(FIFO);最近最少使用置换算法(LRU);改进的时钟置换算法(CLOCK);
4. 页面分配策略;
5. 抖动:抖动现象;工作集。
(四)输入输出(I/O)管理
(1)I/O管理概述
1. I/O设备、设备控制器、通道;
2. I/O控制方式:程序I/O、中断驱动I/O、直接存储器访问I/O和通道I/O
3. I/O软件层次结构:中断处理程序、设备驱动程序、设备独立性软件、用户层I/O软件,各层次软件的任务和工作过程。
(2)设备分配
1. 分配中使用的数据结构;
2. 独占设备的分配过程;
3. 假脱机技术(SPOOLing)。
(3)提高性能的高速缓存与缓冲区技术
(五)文件管理
(1)文件系统基础
1. 文件概念;
2. 文件逻辑结构:顺序文件;索引文件;索引顺序文件;
3. 目录结构:文件控制块和索引节点;单级目录结构和两级目录结构;树形目录结构;目录的查询技术;
4. 文件共享及保护。
(2)磁盘组织与管理
1. 外存的组织方式/文件的物理机构:连续分配、链接分配、索引分配;
2. 磁盘存储空间管理:空闲表/链法、位示图法、成组链接法;
3. 磁盘调度算法:先来先服务、最短寻道、扫描及循环扫描等算法。
(六)操作系统接口
(1)接口类型;
(2)系统调用的概念、类型和实现;
三、参考书目
[1] 严蔚敏,吴伟民. 数据结构(C语言版)[M]. 北京:清华大学出版社
[2] (美)萨尼(Sahni,S.) 著,汪诗林等译. 数据结构、算法与应用(C++语言描述). 北京:机械工业出版社.
[3] 刘小晶、杜选主编. 数据结构——Java语言描述(第2版). 北京:清华大学出版社。
[4] 汤小丹,梁红兵,汤子瀛等.计算机操作系统(第四版)[M].西安电子科技大学出版社.2014年5月第4版
[5] 汤小丹等. 计算机操作系统学习指导与题解[M]. 西安电子科技大学出版社,2008年9月
[6] 操作系统考研辅导教程(计算机专业研究生入学考试全真 题解)[M]. 电子科技大学出版社,2010年9月第1版
《数据库原理》考试大纲
一、课程目标和任务
1.较系统地了解数据库系统的基本概念,基本原理和方法。
2.较深入地理解关系数据库系统的基本概念,基本原理和方法
3.较熟练地掌握关系数据库语言SQL,具有数据库应用编程的能力。
4.初步掌握数据库设计的概念和方法,具有一定的数据库设计能力
二、考核内容与考核目标
(一) 数据库基础知识
1.考核知识点
1)数据管理技术的发展历史
2)数据库系统特点及其相关概念
3)数据模型
4)数据库系统的结构
5)网状数据库和层次数据库
2.考核要求
1)数据管理技术的发展
①了解:数据管理技术的发展过程。
2)数据库系统特点及其相关概念
①了解:数据,数据库,数据库管理系统等概念;数据库管理系统的基本功能;数据库系统的特点;数据库系统与文件系统的主要差别。
②理解:数据独立性,共享性,完整性的含义和意义。
3)数据模型
①了解:现实世界,信息世界和数据世界三者之间的关系
②理解:实体一联系模型(E-R模型)及其相关概念;三种实体集之间的联系类型;三种数据模型(层次模型,网状模型,关系模型)的概念;关系模型的三种完整性约束。
③掌握:用E-R模型描述现实世界的方法。
4)数据库系统的结构
①了解:数据模式,数据库系统的三级模式结构和模式之间的映象;带有数据库的计算机系统构成;数据库管理系统(DSMS)及其功能;面向用户的数据库系统体系结构;用户访问数据库的过程;数据库管理员(DBA)的职责;数据定义语言(DDL)的功能;数据操纵语言( DML)的功能和分类。
②理解:数据库系统三级模式结构对数据独立性的意义
(二).关系数据模型及其运算基础
1.考核知识点
1)关系模型的基本概念
2)关系代数
3)关系演算
2.考核要求
1)关系模型的基本概念
①了解:域,笛卡尔积,关系的定义;关系模式,关系数据库的概念。
②理解:关系的性质;候选码,主码,外码的概念;实体完整性,参照完整性,用户定义的完整性。
2)关系代数
①了解:关系代数运算的分类。
② 理解:关系代数的基本运算。
③掌握:用关系代数表示查询要求。
3)关系演算
①了解:元组关系演算和域关系演算。
(三).关系数据库语言SQL
1.考核知识点
1)SQL概貌,特点及其相关基本概念
2)SQL数据定义功能
3)SQL数据操纵功能
4)数据查询
5)视图的定义和作用
6)SQL数据控制功能
7)数据库编程
2.考核要求
1)SQL概貌,特点及其相关基本概念
①了解:SQL语言的发展及标准化过程;SQL语言的主要特点;SQL中基本表和视图的概念。
2)SQL数据定义功能
①掌握:用SQL语句定义基本表,修改基本表的定义,撤消基本表;用SQL语句定义和撤消索引。
3)SQL数据操纵功能
①掌握:SELECT语句的格式和用法;INSERT语句的格式和用法;DELETE语句的格式和用法;UPDATE语句的格式利用法。
4)数据查询-Select 语句
①掌握:简单查询;带条件查询;分组统计查询;对查询结果排序;多关系连接查询;相关子查询。
5)视图的定义和作用
①理解:视图的概念,视图与基本表的异同;采用视图概念的优点。
②掌握:用SQL语句定义和撤消视图;针对视图的查询。
6)SQL数据控制功能-数据库安全性与完整性约束
①理解:数据库安全性的含义和授权机制;数据库完整性的含义和完整性约束条件;实体完整性,参照完整性,用户自定义完整性。
②掌握:用SQL语句授权和收回权限;在创建基本表时定义完整性约束条件。
7)数据库编程
理解T-SQL编程的相关语法和常用流程控制结构,掌握存储过程与触发器的使用。
(四).关系数据库规范理论
1.考核知识点
1)关系规范化的作用
2)函数依赖
3)关系模式的规范化
2.考核要求
1)关系规范化的作用
①了解:非规范关系模式可能带来的问题;关系规范化如何解决这些问题;规范化理论在数据库设计中的作用。
2)函数依赖
①理解:属性之间的联系类型;候选码,主码,主属性,非主属性,单码,全码等概念;函数依赖和码的唯一性。
3)关系模式的规范化
①理解:第一范式,第二范式,第三范式,BCNF的定义。
②掌握:判定关系模式的规范化程度的方法,能够应用规范化的理论规范关系模式到第三范式。
(五).数据库设计
1.考核知识点
1)数据库设计的任务,一般策略,步骤和基本概念
2)概念结构设计
3)逻辑结构设计
4)物理结构设计
5)数据库实时和维护
2.考核要求
1)数据库设计的任务,策略,步骤和基本概念
①了解:数据库设计的任务;数据库设计涉及到的基本概念;数据库设计的一般策略;数据库设计的步骤;数据库设计的主流方法。
2)概念结构设计
①了解:概念结构的特点;概念结构设计的步骤。
②理解:视图集成中要解决的问题和采取的手段。
③掌握:从现实世界出发设计数据库概念结构(E-R模型)的方法。
3)逻辑结构设计
①掌握:从E-R模型转换为关系模型的方法。
(六).数据库保护
1.考核知识点
1)并发控制基本概念和基本技术
2)数据库恢复基本概念和基本技术
3)数据库安全基本概念和基本技术
2.考核要求
1)并发控制
①了解:并发访问可能出现的问题;封锁及锁的类型;死锁概念;并发调度的可串行性;
②理解: 三级封锁协议;死锁的预防和解除
2)数据库恢复技术
①了解:数据库故障种类;常用数据库恢复手段。
②理解:针对不同故障的恢复方法。
3)数据库安全
①了解:数据库安全涉及到的方法手段,包括:用户标识和鉴别方法,访问控制,审计,数据加密等。
②掌握:数据库访问授权方法,包括授权命令GRANT和撤销权限命令REVOKE
(七)数据库新技术
1.考核知识点
1)数据库系统发展的特点
2)数据管理技术的发展现状与趋势。
2.考核要求
1)数据库发展的特点
①了解:数据库系统发展的特点
2)数据管理技术的发展现状与趋势。
①了解:数据管理技术面临的挑战和发展;
②理解:大数据管理、云计算、数据仓库与联机分析处理技术、内存数据库等。
三、有关说明与实施要求
1了解:指能表述概念、定义、原理、事实等,包括必要的记忆。
2理解:指能对概念,原理,方法,系统等进行叙述、解释、归纳、举例说明。
3掌握:指能对原理,方法,工具等结合实例加以运用。
四、考试方式:笔试
五、参考教材
《数据库系统概论》(第五版), 王珊,萨师煊编著,高等教育出版社
《计算机系统结构》考试大纲
一、课程目标和任务
1.掌握计算机系统分析、设计基本方法;
2.了解计算机系统结构发展历史、现状及趋势;
3.掌握计算机系统结构的基本能概念、基本原理、基本结构;
4.熟悉计算机系统性能评测方法;
5.熟悉软、硬件功能划分及软硬件协同设计技术;
6.了解计算机系统结构中的并行性发展。
二、考核内容与考核目标
(一)计算机系统结构基本概念
1.掌握计算机系统层次结构,计算机系统结构、组成与实现的定义及三者之间的关系;
2.理解透明性、虚拟机的感念;
3.了解计算机系统结构的分类、应用需求和实现技术对系统结构的影响;
4.掌握计算机系统分析设计的基本原则、定量原理及性能评测方法;
5.CPU性能计算和Amdahl定律应用。
(二)指令系统
1.了解数据类型和数据表示,掌握浮点数表数范围、表数精度、表数效率;
2.掌握指令集结构和设计原则;
3.寻址方式;
4.了解指令分类、选择原则,指令结构、指令格式对计算机系统的影响;
5.指令系统设计和优化;
6.掌握CISC计算机指令集设计目标及特点,掌握RISC计算机的设计思想;
7.了解MIPS指令系统。
(三)流水线技术
1.掌握流水的基本概念及性能分析;
2.熟悉流水线的相关与冲突,掌握解决方法;
3.掌握流水线时空图画法及应用;
4.了解非线性流水线调度方法;
5.了解流水线处理机性能的优化设计方法。
(四)向量处理机
1.了解向量处理的基本概念及处理方式;
2.掌握提高向量处理机性能的常用技术;
2.熟悉向量处理机性能评价。
(五)指令级并行及其开发--硬件方法
1.掌握指令级并行的基本概念;
2.熟悉指令动态调度的基本思想及方法;
3.熟悉动态分支预测技术;
4.了解多指令流出技术。
(六)指令级并行开发--软件方法
1. 掌握基本指令调度和循环展开方法;
2. 熟悉静态指令调度技术;
3. 了解静态多指令流出技术。
(七)存储系统
1. 理解多级存储层次结构,掌握存储器层次性能参数计算方法;
2. 熟悉提高Cache/主存、主存/辅存访问性能的方法;
3. 掌握映像规则及在各种映像规则下的查找算法、替换算法;
4. 理解CPU对Cache“写”操作过程及改进方法;
5. 理解虚拟存储器的特点及快速地址转换技术。
(八)输入输出系统
1.掌握输入/输出系统基本概念及输入/输出系统的可靠性、可用性和可信性;
2.了解磁盘的基本结构与性能计算,熟悉磁盘阵列;
3.掌握总线的基本概念及分类,常用总线标准及实例;
4.掌握输入/输出原理、中断系统、通道处理机和输入输出处理机的作用和工作过程。
(九)多处理机
1.掌握并行计算机系统结构的基本概念;
2.了解并行处理面临的挑战;
3.熟悉多处理器Cache一致性问题及解决方案;
4.熟悉分布式共享存储器系统结构;
5.了解大规模并行处理机MPP。
三、有关说明与实施要求
1了解:指能表述概念、定义、原理、事实等,包括必要的记忆。
2理解:指能对概念,原理,方法,系统等进行叙述、解释、归纳、举例说明。
3掌握:指能对原理,方法,工具等结合实例加以运用。
四、考试方式:笔试
五、参考教材
《计算机系统结构教程》(第二版),张晨曦,王志英,清华大学出版社
《计算机组成原理与系统结构》(第4版),白中英,清华大学出版社
《面向对象程序设计》考试大纲
一、考核目标
1.深入理解面向对象的基本概念、基本理论和设计方法。
2.熟练掌握一种面向对象编程语言(C++或Java)的基本语法。
3.能够使用一种面向对象的编程语言编写简单程序。
4.掌握一种面向对象编程语言的基本类库的常用类的用法。
二、考核内容
(一)面向对象的基本概念
1.理解面向对象的基本特征:抽象、封装、继承、多态。
2.类与对象的关系。
3.成员变量与成员方法。
(二)面向对象编程语言的基本语法
1.变量的类型与变量的定义:整型、浮点型、字符型、字符串等。
2.赋值时的数据类型自动转换和强制数据类型转换。
3.运算符与表达式:算术运算符、关系运算符、逻辑运算符、赋值运算符、自增运算符、自减运算符、三元运算符等。
4.数组的定义与使用:一维数组、二维数组。
5.简单的数据输入与输出。
6.选择语句的用法:if/else 语句、switch语句。
7.循环语句:for语句、while 语句、do while语句。
8.控制执行顺序的语句:continue、break。
9.字符串的使用。
(三)面向对象程序设计
1.类与对象的定义,根据实际问题分析出类和对象。
2.根据实际问题分析出成员变量与成员方法。
3.实例变量与静态变量的定义和使用。
4.实例方法与静态方法的定义。
5.方法的参数调用:值参数、引用参数、数组参数等。
6.构造方法的定义与使用。
7.方法的重载、方法的覆盖。
8.this的用法。
9.继承的定义和使用。
10.继承时对象的构建顺序。
11.接口的定义和使用。
12.抽象类的定义和使用。
13.多态的使用。
(四)文件操作
1.文本文件的读、写。
2.二进制文件的读、写。
(五)异常处理
1.异常的概念。
2.异常处理机制。
三、考试方式:笔试
四、参考教材
《Java面向对象程序设计》, 邢国波,杨朝晖,郭庆编著,清华大学出版社
《Java课程设计》第3版,耿祥义、张跃平编著,清华大学出版社
《Java程序设计教程》第三版,雍俊海编著,清华大学出版社
《C++程序设计教程》第三版,朱红、赵琦、王庆宝编著,清华大学出版社
《C++面向对象程序设计教程》第4版,陈维兴、林小茶编著,清华大学出版社