课程编号:465 课程名称:数据结构和程序设计
一、 考试的总体要求
本考试内容由两部分组成,数据结构和程序设计,各占总分的
50%。
数据结构是计算机科学与技术专业基础课,要求学生掌握基本的数据结构及相关的存储方式、基本运算、算法和应用,并能运用盒图、结构化语言、类C、高级语言(C或C++)等方法之一编写算法。
程序设计指采用C++语言,应用数据结构的知识进行面向对象程序设计。要求学生掌握面向对象的程序设计方法,掌握C++语言的基本概念,语法及编程方法。
二、 考试的内容及比例
数据结构考试的内容包括:( 占总分的50% )
1、 线性表、顺序表、链表的存储结构及相关的各种基本运算
2、 栈与队列的概念、特点、存储表示、基本运算;栈的应用;链队列;循环队列
3、 广义表的定义及存储结构
4、 二叉树的定义、性质及存储结构;遍历二叉树;二叉树的应用;森林与二叉数的转换;哈夫曼树及其应用;与二叉树的应用相关的递归
5、 图的定义、存储结构;图的遍历;最小生成树;拓扑排序;关键路径;最短路径;与图的应用相关的递归
6、 静态表查找与动态表查找;哈希表的构造及处理冲突
7、 插入排序、快速排序、选择排序、归并排序、基数排序等内部排序的特点与算法
程序设计考试的内容包括:( 占总分的50% )
1、 基本语法与常用语句,面向对象的基本概念
2、 函数的调用,函数参数,函数的重载及函数作用域
3、 类的概念,类的定义与说明,类的成员函数,作用域
4、 对象的概念,对象的初始化,对象的特殊生成方法,对象的生存期
5、 对象指针和对象引用,对象数组
6、 类的继承性和派生类
7、 虚基类与虚函数
8、 重载及其应用
9、 模版及其应用
三、 试卷类型及比例
考试题型:
数据结构部分:
包括实做题与算法设计题两大类:其中实做题有简述题、举例说明题、图示题、图表题、过程描述题、论述题等。算法设计题应当根据要求,运用允许使用的适当的方法编写算法。
比例: 实做题(60%)
算法设计题(40%)
程序设计部分:
包括3类题型:程序填空,写程序结果和程序设计。
程序填空题:本题型给出程序的功能描述与少量提示,考生填写缺少的程序部分,使得程序完整,并且实现描述的功能。
本题型为20分,2---4个题。
写程序结果题:本题型给出C++程序,并已经调试通过,考生需要根据C++的语法与语义给出正常运行后应该输出的结果。需要按照程序运行的顺序给出正确结果,不需要对程序的正确性进行判断。
本题型为30分,4---6个题。
程序设计:按照题中的要求,写出完整的C++程序,应该有合适的注释等部分,风格参照 “Thinking in C++”.
本题型为25分,2个题。
四、 考试形式及时间
考试形式均为笔试,考试时间为三小时(满分150分)。
五、 主要参考教材(参考书目)
1. 《数据结构》C语言版,严为敏 吴伟民编,清华大学出版社 1997。
2. Data Structures And Program Design In C++,Robert L.Kruse,Alexander J.Rybadeng等,Person Education 出版集团2001年5月出版
3. 《数据结构》(用面向对象方法与C++描述)殷人昆等,清华大学出版社 1999年7月第一版。
4. 《C++语言基础教程》,吕凤翥,清华大学出版社,1999
5. Thinking in C++, Bruce Eckel
