《数据结构》考试大纲
一、考试目的与要求
《数据结构》是人工智能、软件工程、信息管理与信息系统等本科专业学生开设的学科必修课程,是电子信息类专业硕士研究生入学考试的科目之一。
考试目的:《数据结构》是计算机程序设计的重要理论技术基础,是电子信息类的核心课程。考试力求反映电子信息专业硕士学位的特点,科学、公平、准确、规范地测评考生的基本素质和综合能力,选拔具有进一步深造的基本素质和培养潜力的学生,培养能解决理论问题与实际问题的高层次、应用型、复合型的专业人才。
考试要求:要求学生能系统掌握《数据结构》的基本概念、基本原理和方法,能够运用所学的基本原理和基本方法分析、判断和解决有关理论问题和实际问题。
二、参考书目
《数据结构》(第二版),何钦铭,徐镜春,魏宝刚,杨枨著,陈越编,高等教育出版社,2016年。
三、考试形式和试卷结构
1、试卷满分及考试时间
本试卷满分为150分,考试时间为180分钟
2、答题方式
答题方式为闭卷、笔试。试卷由试题、答题纸组成,题目的答案必须写在答题纸上。考生不得携带具有存储功能的计算器。
3、试卷结构
内容包括基本概念、复杂度计算、线性表、堆栈、队列、树、散列查找、图、排序等内容。题型包括选择题、填空题、简答题、算法设计题等。
四、考试内容
(一)基本概念与复杂度计算
1.理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异,以及算法各种基本操作的实现。
2.掌握基本的数据处理原理和方法的基础上,能够对算法进行设计与分析。
3.掌握算法的时间复杂性和空间复杂性,能选择合适的算法进行问题求解。
(二)线性表
1.理解线性表的定义和线性表的顺序、链式存储结构。
2.熟练掌握线性表的插入、删除等运算的算法。
3.熟悉线性表算法设计。
(三)栈和队列
1.理解栈的定义、顺序、链式存储、进出栈运算及双栈操作。
2.熟练掌握栈在非递归和递归算法中的应用。
3.队列的定义、顺序、链式存储、入队和出队运算。
4.熟练掌握栈和队列的基本操作算法和应用。
(四)树
1.熟悉树的概念和树的各种表示、二叉树的定义、性质、存储结构和生成算法。
2.熟悉一般树的存储结构、树和森林之间的相互转换及树与森林遍历。
3.熟练掌握二叉树的遍历运算。
4.理解二叉排序树的定义、查找、插入、删除和生成算法。
5.熟练掌握哈夫曼树的定义和生成过程、哈夫曼编码。
6.理解平衡二叉树的建树、查找、插入和删除。
7.理解大顶堆、小顶堆。
(五)图
1.理解图的定义和基本术语、图的存储结构,主要指邻接矩阵和邻接表。
2.熟练掌握图的深度和广度优先搜索遍历、产生图的最小生成树的普利姆算法和克鲁斯卡尔算法。
3.熟练掌握最短路径的狄克斯特拉算法和佛洛伊德算法。
4.理解拓扑排序的概念及算法、关键路径的概念及算法。
5.理解最小生成树和最短路的生活应用。
(六)查找
1.理解查找的有关概念、顺序查找和二分查找、索引查找和分块查找,散列的概念。
2.掌握构造散列函数,处理冲突的方法,散列表的插入和查找算法。
3.了解B树的定义及查找、插入和删除关键字的过程。
4.理解查找在不同数据环境下的应用。
(七)排序
1.理解外部排序。
2.熟练掌握直接插入排序、希尔排序、直接选择排序、堆排序、冒泡排序、快速排序、归并排序和基数排序。