2015年西北师范大学083500软件工程考研大纲
考研网快讯,据西北师范大学研究生院信息2015年西北师范大学083500软件工程考研大纲已发布,详情如下:《程序设计与数据结构》科目考试大纲(科目
考研网快讯,据西北师范大学研究生院信息2015年西北师范大学083500软件工程考研大纲已发布,详情如下:
《程序设计与数据结构》科目考试大纲
(科目代码:821)
一、考核要求
《程序设计》、《数据结构》两门课程均是软件工程专业的核心课程。学习程序设计课程的主要目的是培养学生编写程序的基本能力以及计算思维,掌握程序设计语言(C或C++)的基本成分、语法规则等基本知识,建立起结构化程序设计思想和方法,为以后系统学习其他专业课程奠定基础。
而编写程序、用计算机解决一个问题,就要将反映问题的数据信息存入计算机,并设计能解决问题的算法。数据结构就是回答计算机如何存储各种数据及数据之间的关系,以及对数据做基本处理的算法实现。要求考生比较系统地理解数据结构的基本概念和基本理论,掌握常用数据结构及其基本算法,具有综合运用数据结构知识解决问题的能力。
《程序设计与数据结构》的考核分为程序设计和数据结构两部分,分值各占50%。程序设计部分考核学生对结构化程序设计方法和设计思想的掌握情况以及独立编程的能力;数据结构部分考核学生对常用数据结构以及相关基本算法的掌握和运用能力。
二、考核评价目标
通过考核,选拔出具有较好的C或C++语言编程能力和初步的数据结构软件设计开发能力的学生来攻读软件工程学科的硕士研究生。考核评价目标应使录取的研究生具有较扎实与系统的从事软件工程学科的进一步学习及科研工作所需的程序设计能力及系统软件开发技能,为以后从事的研究、开发工作提供必要的软件基础和基本技能。而对程序设计的具体编程语言、数据结构的定义和算法描述语言,学生既可以选择C,也可以选择C++。
三、考核内容
程序设计部分(分值比例:50%)
第一章程序基本知识与简单程序设计
【考试内容】
C或C++程序的基本知识、简单程序的设计
【考试要求】
(1)理解C或C++程序的基本构成,变量的定义与变量名的基本规则;
(2)领会类型修饰的使用和功能,整型与字符型数据的混合运算;宏常量(或称符合常量)的定义。
(3)掌握算术表达式、赋值表达式与逗号表达式;数据的输入与输出。
第二章选择结构程序设计
【考试内容】
条件选择语句if和switch的语法及其应用
【考试要求】
(1)领会if语句与条件表达式的区别、switch语句的执行流程。
(2)掌握if语句与switch语句在程序中的使用。
第三章循环控制
【考试内容】
for、while、do-while三种循环控制语句的语法特点和应用
【考试要求】
(1)理解for、while、do-while语句的执行流程及其循环条件表达式的作用和它们在循环控制上的区别;
(2)掌握break与continue语句的区别与应用
(3)能熟练地用三种循环语句进行循环程序设计。
第四章函数与模块化程序设计
【考试内容】
C或C++中函数的定义和使用
【考试要求】
(1)理解全局变量与局部变量、变量的生存期与作用域、变量的动态与静态存储方式等的区别;
(2)了解在多个程序文件中函数与函数的关系;
(3)熟练掌握在程序设计中正确使用函数;对于已知的递归算法,能写出相应的递归程序。
第五章数组
【考试内容】
一维和二维数组的定义及其应用
【考试要求】
(1)理解一维数组与二维数组的地址结构、字符串的结束标志;
(2)掌握常用的几个字符串函数;
(3)掌握在程序设计中应用一维数组、二维数组、字符串;
(4)掌握对数组进行简单排序和查找的方法;
(5)理解数组做函数参数的程序设计。
第六章指针
【考试内容】
C或C++中指针的概念、定义、运算和应用
【考试要求】
(1)理解一维数组与二维数组的地址结构;
(2)理解返回指针的函数与函数指针的区别;
(3)理解指针数组、数组指针、指向指针的指针之间的关系与区别;
(4)理解指针运算的用途和意义;
(5)掌握在程序中利用指针操作数组元素、字符串,以及用指针作函数参数;掌握在程序中应用指针数组。
第七章结构体、共用体和枚举类型数据
【考试内容】
结构体、共用体、枚举等自定义数据类型的定义和运用
【考试要求】
(1)理解结构体与共用体的区别;
(2)掌握结构体、共用体、枚举类型数据的应用,会用typedef定义结构体、共用体等数据类型别名。
第八章预处理命令
【考试内容】
C或者C++中预处理命令的使用
【考试要求】
(1)理解执行预处理命令的时机、宏定义替换规则;
(2)了解带参宏定义与函数的区别;
第九章位运算
【考试内容】
位运算的概念及其应用
【考试要求】
(1)理解位运算的概念、位段的概念;
(2)理解如何在程序中应用位运算。
第十章文件
【考试内容】
文件的打开和读取
【考试要求】
(1)理解文件指针的概念和定义;
(2)掌握文件的打开方法、文件打开函数返回值的处理;
(3)掌握在程序中读写外部的文本文件或者二进制文件的方法。
数据结构部分(分值比例:50%)
第一章基本概念
【考试内容】
数据结构的基本概念;渐进算法分析方法。
【考试要求】
(1)掌握数据结构的概念,包括数据的逻辑结构、存储结构、算法的概念,以及它们之间的关系。
(2)掌握渐进算法分析方法,能够估算算法的时空复杂度
第二章线性表和字符串
【考试内容】
线性表的特点,线性表的顺序实现和链式实现,线性表的应用;字符串的基本运算,字符串匹配算法。
【考试要求】
(1)理解线性表的结构和特点,掌握线性表上基本操作的实现算法。
(2)掌握顺序存储线性表的方法以及基本操作的实现算法。
(3)掌握链接存储线性表的方法,并掌握单链表和循环链表的结构,以及基本操作的实现算法。
(4)理解字符串的存储结构,字符串的基本运算。
(5)掌握字符串简单的匹配算法。
第三章栈和队列
【考试内容】
栈和队列的基本运算及其应用。
【考试要求】
(1)理解栈的定义和结构特点,掌握其存储方式(顺序存储和链接存储)和基本操作的实现算法。
(2)理解队列的结构和特点,掌握其存储方式(顺序存储和链接存储)和基本操作的实现算法。
第四章递归
【考试内容】
递归的基本概念,递归的简单应用。
【考试要求】
(1)理解递归的基本概念和实现原理,掌握用递归思想描述问题和构造算法的方法。
(2)掌握求阶乘、汉诺塔等问题的递归解法。
(3)了解用栈将递归改为非递归的方法。
第五章树和二叉树
【考试内容】
树和二叉树
【考试要求】
(1)理解树的结构和定义,掌握树的主要概念。
(2)理解各种二叉树的结构,掌握其特点。
(3)掌握二叉树的三种遍历方法的实现原理和性质,能将二叉树的遍历方法应用于求解二叉树的叶子结点个数。二叉树计数等问题,掌握遍历的非递归实现方法。
(4)理解树的存储结构,掌握树的遍历等方法的实现。
(5)理解霍夫曼编码的基本原理。
第六章集合和搜索
【考试内容】
集合、二叉搜索树和AVL树
【考试要求】
(1)理解集合的基本概念,掌握常用实现集合的各种存储方法。
(2)掌握无序线性表的顺序搜索、有序线性表的二分搜索。。
(3)理解二叉搜索树的定义和特点,掌握二叉搜索树插入和删除的算法。
(4)理解AVL树的定义和特点,掌握AVL树上插入新结点的方法。
第七章图
【考试内容】
图的存储,图的遍历,最小生成树,最短路径和活动网络。
【考试要求】
(1)掌握图的基本概念、图的邻接矩阵存储方式和邻接表存储方式。
(2)掌握图的深度优先遍历和广度优先遍历方法。
(3)掌握Kluskal和Prim生成最小生成树的方法。
(4)掌握Dijkstra求单源最短路径的方法。
(5)掌握AOV活动网络的拓扑排序方法,AOE活动网络的关键路径的方法。
第八章排序
【考试内容】
插入排序、交换排序、选择排序、归并排序和基数排序。
【考试要求】
理解各种排序方法的实现,掌握各种排序算法的特点和时间复杂度,能按指定的排序方法实现对数表做排序。
第九章索引结构与散列
【考试内容】
线性索引结构、B+树和B-树索引结构、散列。
【考试要求】
(1)理解线性索引结构的特点。
(2)理解B+树和B-树索引的结构,掌握B+树和B-树插入和删除方法。
(3)理解散列的实现原理,能按指定的散列函数和解决冲突的方法构造散列表。
四、参考书目
1.《C语言大学使用教程》(第二版)苏小红等编著电子工业出版社
2.《数据结构(C语言版)》严蔚敏、吴伟民编著清华大学出版社
- 2021-03-04【2015拟录取】西北师大拟录取名单及须知
- 2020-12-132019年西北师范大学英语笔译口译翻译硕士初试真题
- 2020-09-13【2014真题】西北师大各学院真题大派送
- 2020-05-18【2015复试真题】文艺学回忆版
- 2020-04-02【真题】历年各学院~求人品!
- 2020-03-27【版主声明】有关真题、贩子的各种说明
- 2020-03-19【2015经验贴】学科教学(英语)
- 2020-02-222017年西北师范大学643中国史综合真题回忆
- 2019-09-142019西北师范大学传媒学院 广播电视630艺术综合真题
- 2019-08-222019西北师大333真题回忆版补充中。请小伙伴进来。。。