2019年广西大学硕士研究生入学《数据结构与程序设计(817)》考试大纲

广西大学2019年硕士研究生入学
《数据结构与程序设计(817)》考试大纲

命题方式 招生单位自命题 科目类别 初试
满分 150

考试性质
该考试是为广西大学招收计算机技术专业学位硕士研究生(含全日制和非全日制)而设置的具有选拔性质的自主命题初试业务课科目。

考试方式和考试时间
闭卷统考。研究生入学考试统一时间。

试卷结构
一、试卷满分及考试时间
本试卷满分为150分,考试时间为180分钟。
二、答题方式
答题方式为闭卷、笔试。
三、试卷内容结构
数据结构90分
程序设计基础60分
四、试卷题型结构
判断题(10分)
单项选择题(50分)
填空题(20分)
综合题(45分)
编程题(25分)

考试内容和考试要求
数据结构
【考查目标】
1.理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异,以及各种基本操作的实现。?
2.掌握基本的数据处理原理和方法的基础上,能够对算法进行设计与分析。???
3.能够选择合适的数据结构和方法进行问题求解;具备采用c语言设计与实现算法的能力。
一、绪论
(一)了解数据结构的基本概念。
(二)掌握算法的五大要素。
(三)掌握计算语句频度和估算算法时间复杂度的方法。
二、线性表
(一)掌握线性表的逻辑结构。
(二)掌握线性表的存储结构。
(三)掌握线性表在顺序结构和链式结构上实现基本操作的方法。
(四)掌握从时间和空间复杂度的角度比较线性表两种存储结构的不同特点及其适用场合。
三、栈和队列
(一)掌握栈和队列的特点。
(二)掌握在两种存储结构上栈的基本操作的实现。
(三)熟练掌握循环队列和链队列的基本运算。
(四)掌握递归算法执行过程中栈状态的变化过程。
四、串
(一)了解串的七种基本运算的定义。
(二)掌握这些基本运算来实现串的其它各种运算的方法。
(三)掌握在顺序存储结构上实现串的各种操作的方法。
(四)理解串名的存储映象和在堆存储结构实现串操作的方法。
五、数组和广义表
(一)掌握数组在以行为主的存储结构中的地址计算方法。
(二)掌握矩阵实现压缩存储时的下标变换。
(三)掌握理解稀疏矩阵的两种存储方式的特点和适用范围,领会以三元组表示稀疏矩阵时进行运算采用的处理方法。
(四)掌握广义表的定义及其存储结构,学会广义表的表头,表尾分析方法。
(五)掌握学习编制广义表的递归算法。
六、树和二叉树
(一)理解二叉树的结构特点。
(二)掌握二叉树的各种存储结构的特点及适用范围。
(三)掌握按各种次序遍历二叉树的递归和非递归算法。
(四)掌握二叉树的线索化,在中序线索树上找给定结点的前驱和后继的方法。
(五)掌握树的各种存储结构及其特点。
(六)掌握编写树的各种运算的算法。
(七)掌握建立最优二叉树和哈夫曼编码的方法。
七、图
(一)熟悉图的各种存储结构;
(二)了解实际问题与采用何种存储结构和算法有密切联系。
(三)掌握遍历图的递归和非递归算法。
(四)掌握应用图的遍历算法求各种简单路径问题(比如,最小生成树、最短路径、拓扑排序、关键路径等)。
八、动态存储管理
(一)了解存储器分配策略和算法。
(二)了解无用单元收集时的标志算法。
九、查找
(一)掌握顺序查找、折半查找和索引查找的方法、应用。
(二)掌握二叉排序树的构造方法。
(三)掌握二叉平衡树的建立方法。
(四)掌握B-树,B+树和键树的特点以及它们的建立过程。
(五)掌握哈希表的构造方法。
(六)掌握按定义计算各种查找方法在等概率情况下查找成功时和失败时的平均查找长度。
(七)掌握哈希表在查找不成功时的平均查找长度的计算方法。
十、内部排序
(一)掌握各种排序方法的特点并能灵活应用。
(二)掌握各种方法的排序过程。
(三)掌握各种排序方法的时间复杂度分析。
十一、外部排序
(一)理解外部排序的两个过程。
(二)掌握外排过程中所需进行外存读/写次数的计算方法。
(三)掌握败者树的建立过程。
(四)掌握实现多路归并的算法。
(五)掌握置换-选择排序的过程。
(六)熟悉最佳归并树的构造方法。
(七)掌握按最佳归并树的归并方案进行平衡归并时,外存读/写次数的计算方法。
程序设计基础
【考查目标】
1.了解算法设计及其表示方法,掌握结构化程序设计方法。
2.掌握标识符、各种基本数据类型的使用,掌握算术运算符的优先级和结合性,掌握表达式计算中的类型转换、掌握输入、输出函数的使用。
3.掌握逻辑值的表示、使用及其运算,掌握关系运算符的运算规则及关系表达式,掌握逻辑运算符的运算规则及逻辑表达式;
4.掌握条件语句,即if语句和switch语句的构成、执行过程及使用方法;掌握循环语句,即while循环、do-while循环及for循环的构成、执行过程及使用方法;掌握break语句和continue语句的作用和区别。
5.掌握各类数组的定义、 初始化及引用方法。
6.掌握指针的定义、初始化和使用方法。
一、 程序设计基本概念                                                  
(一)了解程序、程序设计和算法的基本概念。
(二)了解结构化程序设计方法的特点。
(三)掌握C或Java语言程序的基本结构。
二、数据类型、运算符和表达式                                        
(一)掌握C或Java语言的数据类型:常量与变量、整型数据、实型数据、字符型数据。
(二)掌握算术运算符与算术表达式、赋值运算符与赋值表达式、逗号运算符与逗号表达式。
三、顺序结构程序设计                                                
(一)掌握赋值语句。
(二)掌握数据的输入与输出语句。
四、选择结构程序设计                                                    
(一)掌握关系运算和逻辑运算。
(二)掌握if语句的定义和使用方法。
(三)掌握条件运算符和条件表达式。
(四)掌握switch语句、语句标号和goto语句。  
五、循环结构程序设计                                      
(一)掌握while语句的定义和使用方法。
(二)掌握do-while语句的定义和使用方法。
(三)掌握for语句的定义和使用方法。
(四)掌握循环的嵌套定义、break和continue语句在循环体中的作用      
六、数组                                                                
(一)掌握一维数组的定义、初始化和引用方法。
(二)掌握二维数组的定义、初始化和引用方法。
(三)掌握字符数组的定义、初始化和引用方法。
七、函数                                                                
(一)掌握库函数的调用方法。
(二)掌握函数的定义、调用方法。
八、指针
(一)掌握指针的基本概念。
(二)掌握指针变量的定义与引用方法。
(三)掌握函数之间地址值的传递、数组和指针的关系、字符串与指针的关系。
(四)掌握链表的定义、初始化和引用方法。
九、结构体、共用体和用户定义类型
(一)掌握结构体的定义和引用方法。
(二)掌握结构体数组、指向结构体的指针的定义、初始化和引用方法。
(三)掌握共用体、枚举类型的定义、初始化和引用方法。
(四)掌握用typedef说明一种新类型名。

备注

发布了831 篇原创文章 · 获赞 680 · 访问量 134万+

猜你喜欢

转载自blog.csdn.net/zhangchen124/article/details/105235490