【考试科目】
1.《C语言程序设计》 2.《数据结构》
【考试范围】
《C语言程序设计》
第一章 程序设计初步
考核要点:常量与变量;基本数据类型;变量的赋值和赋值运算符; 算术运算符和表达式、复合的赋值运算符;增1和减1运算符;宏常量与 宏替换; 自动类型转换与强制类型转换等。
第二章 程序控制结构
考核要点:字符常量;字符的输入/输出;数据的格式化输出与输入; 算法的概念及其描述方法;关系运算符与关系表达式;逻辑运算符与逻 辑表达式;条件运算符与条件表达式;用于选择控制的条件语句;用于 多路选择的 switch 语句;循环控制结构与循环语句;计数控制的循环; 条件控制的循环;嵌套循环;流程的转移控制等。
第三章 函数
考核要点:函数的定义;函数调用;函数原型; 向函数传递值;从 函数返回值;函数设计的基本原则;函数的嵌套调用和递归函数;变量 的作用域和存储类型;
第四章 其他数据类型
考核要点:一维和二维数组的定义、初始化和引用;变量的内存地 址;指针变量的定义和初始化;间接寻址运算符;按值调用与按地址调 用;字符串常量;字符指针;字符串的存储、访问和输入输出;字符串 处理函数; 向函数传递字符串;字符处理函数;指针与一维数组、二维 数组间的关系;指针与字符和字符串的关系; 向函数传递一维数组;常 用的排序和查找算法;用指针变量作函数参数;从函数返回字符串指针 等。
第五章 结构体与文件
考核要点:结构体类型的定义;结构体变量的定义、初始化和成员 的引用;结构体数组的定义、初始化和成员的引用;结构体指针的定义、 初始化和成员的引用; 向函数传递结构体;动态数据结构——单向链表; 二进制文件和文本文件;文件的打开和关闭等。
《数据结构》
第一章 绪论
考核要点: 数据结构的研究范畴;数据、数据元素、数据项、数据 对象概念;逻辑结构、物理结构概念;算法分析(时间复杂度)。
第二章 线性表
考核要点:顺序表、链表特点;线性表在顺序表及链表中实现基本 操作(查找、插入、删除等)的算法;有序表在链表中实现插入、删除、 合并等操作的算法。
第三章 栈和队列
考核要点: 栈的定义;给定入栈序列,如何得到一特定出栈序列; 栈的表示;队列的定义;队列的顺序表示和实现—循环队列。
第四章 串
考核要点:串的定义和有关基本概念。
第五章 数组
考核要点:数组的定义;数组元素在内存中的地址计算方法。
第六章 树和二叉树
考核要点:树的定义及相关术语;二叉树的定义;二叉树的性质;
二叉树的先序、中序、后序遍历方法;给出先序(或后序)+中序遍历序 列,能画出这棵树,并写出对应后序(或先序)遍历序列;二叉树的先 序、 中序、后序遍历的递归算法及应用;树、森林与二叉树之间的转换; 哈夫曼树的定义、构造及其应用。
第七章 图
考核要点: 图的定义和术语;图的邻接矩阵表示法和邻接表表示法; 深度优先搜索、广度优先搜索遍历;求最小生成树;拓扑排序序列。
第八章 查找
考核要点:顺序查找、折半查找、索引顺序查找对表的要求及查找 效率;折半查找算法;二叉排序树的查找方法及算法;给出一组关键字、 哈希函数和处理冲突的方法,构造哈希表,求平均查找长度。
第九章 内部排序
考核要点:直接插入排序、希尔排序、 冒泡排序、快速排序、简单 选择排序、堆排序、归并排序时间复杂度 、辅助空间、 稳定性;上述 几种内部排序方法的特点;希尔排序、快速排序、堆排序的排序过程。
【参考书目】
1.《C语言程序设计》 (第4版),苏小红等编著,高等教育出版社, 2019.8.
2.《数据结构》 (C语言版) (第2版),严蔚敏、李冬梅、吴伟民 编 著,人民邮电出版社,2015.2.
3.《新编数据结构习题与解析》,李春葆、喻丹丹、 曾平、 曾慧编著, 清华大学出版社,2013.5.