数据结构考试要求大纲.docx

上传人:b****5 文档编号:6012505 上传时间:2023-01-03 格式:DOCX 页数:17 大小:19.88KB
下载 相关 举报
数据结构考试要求大纲.docx_第1页
第1页 / 共17页
数据结构考试要求大纲.docx_第2页
第2页 / 共17页
数据结构考试要求大纲.docx_第3页
第3页 / 共17页
数据结构考试要求大纲.docx_第4页
第4页 / 共17页
数据结构考试要求大纲.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

数据结构考试要求大纲.docx

《数据结构考试要求大纲.docx》由会员分享,可在线阅读,更多相关《数据结构考试要求大纲.docx(17页珍藏版)》请在冰豆网上搜索。

数据结构考试要求大纲.docx

数据结构考试要求大纲

《数据结构》考试大纲

 

一、课程基本信息

1.课程代码:

104012141

2.课程类别:

专业基础课

3.学分:

4

4.适用专业:

计算机科学与技术

二、课程考试内容与要求

第1章概论

(一)课程内容

1.1基本概念和术语

1.2学习数据结构的意义

1.3算法的描述和分析

(二)学习目的与要求

本章的目的是介绍数据结构中常用的基本概念和术语以及学习数据结构的意义,要求了解本章介绍的各种基本概念和术语,掌握算法描述和分析的方法。

本章重点是了解数据结构的逻辑结构、存储结构及数据的运算三方面的概念及相互关系,难点是算法复杂度的分析方法。

(三)考核知识点与考核要求

1.数据结构的基本概念和术语、要求达到“识记”层次。

1.1数据、数据元素、数据项、数据结构等基本概念。

1.2数据结构的逻辑结构、存储结构及数据运算的含义及其相互关系。

1.3数据结构的两大类逻辑结构和四种常用的存储表示方法。

2.数据结构在软件系统中的作用,要求达到“识记”层次。

2.1数据结构在各种软件系统中所起的作用。

2.2选择合适的数据结构是解决应用问题的关键步骤。

3.算法的描述和分析,要求达到“领会”层次。

3.1算法、算法的时间复杂度和空间复杂度、最坏的和平均的时间复杂度等概念。

3.2算法的时间复杂度不仅仅依赖于问题的规模,也取决于输入实例的初始状态。

3.3算法描述和算法分析的方法,对于一般算法能分析出时间复杂度。

第2章线性表

(一)课程内容

2.1线性表的逻辑结构

2.2线性表的顺序存储结构

2.3线性表的链式存储结构

2.4顺序表和链表的比较

(二)学习目的与要求

本章目的是介绍线性表的逻辑结构和各种存储表示方法,以及定义在逻辑结构上的各种基本运算及其在存储结构上如何实现这些基本运算。

要求在熟悉这些内容的基础上,能够针对具体应用问题的要求和性质,选择合适的存储结构设计出相应的有效算法,解决与线性表相关的实际问题。

本章重点是熟练掌握顺序表和单链表上实现的各种基本算法及相关的时间性能分析,难点是能够使用本章所学到的基本知识设计有效算法解决与线性表相关的应用问题。

(三)考核知识与考核要求

1.线性表的逻辑结构,要求达到“识记”层次。

1.1线性表的逻辑结构特征。

1.2线性表上定义的基本运算,并能利用基本运算构造出较复杂的运算。

2.线性表的顺序存储结构,要求达到“综合利用”层次。

2.1顺序表的含义及特点,即顺序表如何反映线性表中元素之间的逻辑关系。

2.2顺序表上的插入、删除操作及其平均时间性能分析。

2.3利用顺序表设计算法解决简单的应用问题。

3.线性表的链式存储结构,要求达到“综合应用”层次。

3.1链表如何表示线性表中元素之间的逻辑关系。

3.2链表中头指针和头结点的使用。

3.3单链表、双链表、循环链表链接方式上的区别。

3.4单链表上实现的建表、查找、插入和删除等基本算法,并分析其时间复杂度。

3.5循环链表上尾指针取代头指针的作用,以及单循环链表上的算法与单链表上相应算法的异同点。

3.6双链表的定义及其相关的算法。

3.7利用链表设计算法解决简单的应用问题。

4.顺序表和链表的比较,要求达到“领会”层次。

4.1顺序表和链表的主要优缺点。

4.2针对线性表上所需要执行的主要操作,知道选择顺序表还是链表作为其存储结构才能取得较优的时空性能。

第3章栈和队列

(一)课程内容

3.1栈

3.2队列

3.3栈和队列的应用

(二)学习目的与要求

本章目的是介绍栈和队列的逻辑结构定义及在两种存储结构上如何实现栈和队列的基本运算。

要求在掌握栈和队列的特点的基础上,懂得在什么样的情况下能够使用栈或队列。

本章重点是掌握栈和队列在两种存储结构上实现的基本运算,难点是循环队列中对边界条件的处理。

(三)考核知识与考核要求

1.栈的逻辑结构、存储结构及其相关算法,要求达到“综合应用”层次。

1.1栈的逻辑结构特点,栈与线性表的异同。

1.2顺序栈和链栈上实现的进栈、退栈等基本算法。

1.3栈的“上溢”和“下溢”的概念及其判别条件。

1.4利用栈设计算法解决简单的应用问题。

2.队列的逻辑结构、存储结构及其相关算法,要求达到“综合应用”层次。

2.1队列的逻辑结构特点,队列与线性表的异同。

2.2顺序队列(主要是循环队列)和链队列上实现的入队、出队等基本算法。

2.3队列的“上溢”和“下溢”的概念及其判别条件。

2.4使用数组实现的循环队列取代普通的顺序队列的原因。

2.5循环队列中对边界条件的处理方法。

2.6利用队列设计算法解决简单的应用问题。

3.栈和队列的应用,要求达到“领会”层次。

栈和队列的特点,什么样的情况下能够使用栈或队列。

第4章串

(一)课程内容

4.1串及其运算

4.2串的存储结构

(二)学习目的与要求

本章目的是介绍串的逻辑结构、存储结构及其串上的基本运算,由于C语言及其它高级语言均已具备了较强的串处理功能,故本章重点是掌握串上实现的模式匹配算法,这也是本长的难点。

(三)考核知识与考核要求

1.串及其运算,要求达到“领会”层次。

1.1串的有关概念及基本运算。

1.2串与线性表的关系。

2.串的存储结构,要求达到“简单应用”层次。

2.1串的两种存储表示。

2.2串上实现的模式匹配算法及其时间性能分析。

2.3使用C语言提供的串操作函数构造与串相关的算法解决简单的应用问题。

第5章数组和广义表

(一)课程内容

5.1数组

5.2矩阵的压缩存储

5.3广义表的概念

(二)学习目的与要求

本章目的是介绍多维数组的逻辑结构特征及其存储方式,特殊矩阵和稀疏矩阵的压缩存储方法及广义表的概念,要求考生熟悉这些内容。

本章重点是熟悉多维数组的存储方式、矩阵的压缩存储方式、广义表的定义及其求表头和表尾的运算,难点是稀疏矩阵的压缩存储表示下实现的算法。

(三)考核知识点与考核要求

1.数组,要求达到“领会”层次。

1.1数组的逻辑结构特征。

1.2数组的顺序存储结构及地址计算方式。

1.3数组是一种随机存取结构的原因。

2.矩阵的压缩存储,要求达到“领会”层次。

2.1特殊矩阵和稀疏矩阵的概念。

2.2特殊矩阵和压缩存储时的下标变换方法。

2.3稀疏矩阵的三元组表表示方法及有关算法。

3.广义表的概念,要求达到“领会”层次。

3.1广义表的有关概念及其与线性表的关系。

3.2广义表的括号表示和图形表示之间的转换。

3.3求给定的非空广义表的表头和表尾运算。

第6章树

(一)课程内容

6.1树的概念

6.2二叉树

6.3二叉树的遍历

6.4线索二叉树

6.5树和森林

6.6哈夫曼树及其应用

(二)学习目的与需求

本章目的是介绍二叉树的定义、性质、存储结构、遍历、线索化、树的定义、存储结构、遍历、树和森林与二叉树的转换,哈夫曼树及哈夫曼编码等内容。

要求在熟悉这些内容的基础上,重点掌握二叉树的遍历算法及其相关应用,难点是使用本章所学到的有关知识设计出有效算法,解决与树或二叉树相关的应用问题。

(三)考核知识点与考核要求

1.树的概念,要求达到“领会”层次。

1.1树的逻辑结构特征。

1.2树的不同表示方法。

1.3树的常用术语及含义。

2.二叉树,要求达到“简单应用”层次。

2.1二叉树的递归定义及树与二叉树的差别。

2.2二叉树的性质,了解相应的证明方法。

2.3二叉树的两种存储方法、特点及适用范围。

3.二叉树的遍历,要求达到“综合应用”层次。

3.1二叉树的三种遍历算法,理解其执行过程。

3.2确定三种遍历所得到的相应的结点访问序列。

3.3以遍历算法为基础,设计有关算法解决简单的应用问题。

4.线索二叉树,要求达到“领会”层次。

4.1二叉树线索化的目的及实质。

4.2在中序线索树中查找给定结点的中序前趋和中序后继的方法。

4.3查找给定结点的前序前趋和后序后继并非有效的原因。

5.树和森林,要求达到“领会”层次。

5.1树和森林与二叉树之间的转换方法。

5.2树的各种存储结构及其特点。

5.3树的两种遍历方法。

6.哈夫曼树及其应用,要求达到“简单应用”层次。

6.1最优二叉树和最优前缀码的概念及特点。

6.2哈夫曼算法的思想。

6.3根据给定的叶结点及其权值构造出相应的最优二叉树。

6.4根据最优二叉树构造对应的哈夫曼编码。

第7章图

(一)课程内容

7.1图的概念

7.2图的存储结构

7.3图的遍历

7.4生成树和最小生成树

7.5最短路径

7.6拓扑排序

(二)学习目的与要求

本章目的是介绍图的基本概念、两种常用的存储结构、两种遍历算法以及图的应用算法,要求考生在熟悉这些内容的基础上,重点掌握在图的两种存储结构上实现的遍历算法。

本章难点是图的应用算法:

求最小生成树,求最短路径以及拓扑排序,只要求考生掌握这些算法的基本思想及时间性能。

(三)考核知识与考核要求

1.图的概念,要求达到“领会”层次。

1.1图的逻辑结构特征。

1.2图的常用术语及含义。

2.图的存储结构,要求达到“简单应用”层次。

2.1邻接矩阵和邻接表这两种存储结构的特点及适用范围。

2.2根据应用问题的特点和要求选择合适的存储结构。

3.图的遍历,要求达到“简单应用”层次。

3.1连通图及非连通图的深度优先搜索和广度优先搜索两种遍历算法,其执行过程以及时间分析。

3.2确定两种遍历所得到的顶点访问序列。

3.3图的两种遍历与树的遍历之间的关系。

3.4两种遍历所使用的辅助数据结构(栈或队列)在遍历过程中所起的作用。

3.5利用图的两种遍历设计算法解决简单的应用问题。

4.生成树和最小生成树,要求达到“领会”层次。

4.1生成树和最小生成树的概念。

4.2对遍历给定的图,画出深度优先和广度优先生成树或生成森林。

4.3Prim和Kruskal算法的基本思想、时间性能及这两种算法各自的特点。

4.4要求对给定的连通图,根据Prim和Kruskal算法构造出最小生成树。

5.最短路径,要求达到“领会”层次。

5.1最短路径的含义。

5.2求单源最短路径的Dijkstra算法的基本思想和时间性能。

6.拓扑排序,要求达到“领会”层次。

6.1拓扑排序的基本思想和步骤。

6.2拓扑排序不成功的原因。

6.3对给定的有向图,若拓扑序列存在,则要求写出一个或多个拓扑序列。

第8章查找

(一)课程内容

8.1基本概念

8.2静态查找表

8.3动态查找表

8.4哈希表

(二)学习目的与要求

本章目的是介绍线性表、树和散列表的查找方法,算法实现以及各种查找方法的时间性能(平均查找长度)分析。

要求考生在熟悉这些内容的基础上,重点掌握顺序查找、二分查找,二叉查找树上查找以及散列表上查找的基本思想和算法实现。

本章难点是二叉查找树的删除算法。

(三)考核知识点与考核要求

1.基本概念,要求达到“识记”层次。

1.1查找在数据处理中的重要性。

1.2查找算法效率的评判标准。

2.线性表的查找,要求达到“简单应用”层次。

2.1顺序查找、二分查找、分块查找的基本思想、算法实现和查找效率分析。

2.2顺序查找中哨兵的作用。

2.3二分查找对存储结构及关键字的要求。

2.4通过比较线性表上三种查找方法的优缺点,能根据实际问题的要求和特点,选择出合适的查找方法。

3.树的查找,要求达到“简单应用”层次。

3.1二叉排序树特点以及用途。

3.2二叉排序树的插入、删除、建树和查找算法及时间性能。

3.3建立一棵二叉排序树的过程实质上是对输入实例的排序过程,输入实例对所建立的二叉排序树形态的影响。

4.哈希技术,要求达到“简单应用”层次。

4.1哈希表、哈希函数、哈希地址和装填因子等有关概念。

4.2哈希函数的选取原则及产生冲突的原因。

4.3几种常用的哈希函数构造方法。

4.4两类解决冲突的方法及其优缺点。

4.5产生“堆积”现象的原因。

4.6采用线性探测法和拉链法解决冲突时,哈希表的建表方法、查找过程以及算法实现和时间分析。

4.7哈希表和其它表的本质区别。

第9章排序

(一)课程内容

9.1基本概念

9.2插入排序

9.3交换排序

9.4选择排序

9.5归并排序

9.6基数排序

9.7各种排序方法的比较和选择

(二)学习目的与要求

本章目的是介绍五类内部排序方法的基本思想、排序过程、算法实现、时间和空间性能的分析以及各种排序方法的比较和选择。

要求在熟悉这些内容的基础上,重点掌握快速排序、堆排序、归并排序和基数排序的基本思想及排序过程,本章难点是这四个排序算法的实现。

(三)考核知识点与考核要求

1.基本概念,要求达到“识记”层次。

1.1排序在数据处理中的重要性。

1.2排序方法的“稳定”性含义。

1.3排序方法的分类及算法好坏的评判标准。

2.插入排序,要求达到“综合应用”层次。

2.1直接插入排序的基本思想和算法实现,以及在最好、最坏和平均情况下的时间性能分析。

2.2直接插入排序中哨兵的作用。

2.3针对给定的输入实例,要能写出直接插入排序的排序过程。

3.交换排序,要求达到“综合应用”层次。

3.1冒泡排序的基本思想。

3.2快速排序的基本思想和算法实现,以及在最坏和平均情况下的时间性能分析,了解算法的稳定性。

3.3基准元素(划分元)对划分是否平衡的影响。

3.4针对给定的输入实例,能写出快速排序的排序过程。

4.选择排序,要求达到“简单应用”层次。

4.1堆、小根堆、大根堆、堆项等有关概念和定义。

4.2堆性质及堆与完全二叉树的关系。

4.3直接选择排序和堆排序的基本思想和算法实现,以及时间性能分析。

4.4针对给定的输入实例,写出堆排序的排序过程。

5.归并排序,要求达到“领会”层次。

5.1归并排序的基本思想和算法实现,以及时间性能分析。

5.2针对给定的输入实例,能写出归并排序的排序过程。

6.各种排序方法的比较和选择,要求达到“简单应用”层次。

6.1通过对被排序的记录数目、记录信息量的大小、关键字的结构及初始状态、稳定性要求、辅助空间的大小、各种时间性能等方面的比较掌握各种排序的优缺点。

6.2根据实际问题的特点和要求选择合适的排序方法。

三、考试方式及时间

1.考试方式:

闭卷笔试

2.考试时间:

120分钟或其他

四、试题类型、要求及分值

试卷中有几种题型就写几种。

判断题(请将判断的结果填写在题后的括号内,正确的打√,错误的打×。

本题共10小题,第小题1分,共10分)

单项选择题(在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。本大题共15小题,每小题2分,共30分。)

填空题(将正确的答案写在每小题的空格内。

错填或不填均无分。

本大题共10小题,每小题1分,共10分。)

解答题(本大题共6小题,每小题5分,共30分)

算法阅读题(本大题共2小题,每小题5分,共10分)

算法设计题(本题共10分)

五、成绩评定方式

平时成绩10%+实验成绩10%+期中考试成绩20%+期末考试成绩60%

六、教材及主要参考书

数据结构(C语言版)严蔚敏,吴伟民清华大学出版社,2002.9

数据结构题集严蔚敏,吴伟民等清华大学出版社

TheArtofComputerProgrammingvolume1/FundamewfalAlgorithmsDE.Knuth清华大学出版社

TheArtofComputerProgrammingvolume3/SortingandSearchingDE.Knuth清华大学出版社

数据结构(用面向对象方法与C++描述)殷人昆清华大学出版社

数据结构习题与解答彭波清华大学出版社

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机软件及应用

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1