中国农业大学821数据结构2020年考研专业课初试大纲
中国农业大学_821数据结构_《数据结构》习题(6)

第6章 二叉树与树一、回答题1. 图6-1所示的树的叶子结点、非中端结点、每个结点的度及树的深度各是多少?图6-1 树2. 已知一棵树边的集合表示为:{ ( L, N ), ( G, K ), ( G, L ), ( G, M ), ( B, E ), ( B, F ), ( D, G ), ( D, H ), ( D, I ), ( D, J ), ( A, B ), ( A, C ), ( A, D ) },画出这棵树,并回答以下问题:(1) 树的根结点是哪个?哪些是叶子结点?哪些是非终端结点? (2) 树的度是多少?各个结点的度是多少? (3) 树的深度是多少?各个结点的层数是多少?(4) 对于结点G ,它的双亲结点、祖先结点、孩子结点、子孙结点、兄弟和堂兄弟分别是哪些结点?3. 如果一棵度为m 的树中,度为1的结点数为n 1,度为2的结点数为n 2,……,度为m 的结点数为n m ,那么该树中含有多少个叶子结点?有多少个非终端结点?ABECDFGHJI4. 任意一棵有n 个结点的二叉树,已知有m 个叶子结点,能否证明度为2结点有m-1个?5. 已知在一棵含有n 个结点的树中,只有度为k 的分支结点和度为0的叶子结点,那么该树含有的叶子结点的数目是多少?6. 一棵含有n 个结点的k 叉树,可能达到的最大深度和最小深度各为多少?7. 对于3个结点A 、B 、C ,可以过程多少种不同形态的二叉树?8. 深度为5的二叉树至多有多少个结点?9. 任何一棵二叉树的叶子结点在先序、中序和后序遍历中的相对次序是发生改变?不发生改变?不能确定?10. 设n 、m 为一棵二叉树上的两个结点,在中序遍历时,n 在m 前的条件是什么? 11. 已知某二叉树的后续遍历序列是dabec ,中序遍历序列是debac ,那么它的前序遍历序列是什么?12. 对一棵满二叉树,m 个树叶,n 个结点,深度为h ,则n 、m 和h 之间的关系是什么? 13. 对图6-2(a)和(b)所示的二叉树,它们的经过先序、中序和后序遍历后得到的结点序列分别是什么?画出它们的先序线索二叉树和后序线索二叉树。
811《数据结构》考研大纲

811--《数据结构》考研大纲一、考核内容:1 绪论1.1算法的基本概念1.2数据结构的基本概念1.3数据抽象和抽象数据类型1.4描述数据结构和算法1.5算法分析的基本方法2 线性表2.1线性表的定义及基本操作2.2线性表的顺序存储2.3线性表的链接存储3 栈和队列3.1栈和队列的基本概念3.2栈和队列的顺序存储结构3.3栈和队列的链式存储结构3.4表达式计算3.5递归数组4.1数组的基本概念4.2特殊矩阵4.3稀疏矩阵5 树和二叉树5.1树的基本概念5.2二叉树5.2.1二叉树的定义及主要特征5.2.2二叉树的顺序存储和链式存储5.2.3二叉树的遍历5.2.4 线索二叉树的基本概念和构造5.3树和森林5.3.1树的存储结构5.3.2森林和二叉树的转换5.3.3树和森林的遍历5.4树和二叉树的应用5.4.1二叉排序树5.4.2二叉平衡树5.4.3哈夫曼(Huffman)树和哈夫曼编码6 图6.1图的基本概念6.2图的存储及基本操作6.2.1邻接矩阵法6.2.2邻接表表示法6.3图的遍历6.3.1深度优先搜索6.3.2广度优先搜索6.4图的基本应用6.4.1拓扑排序6.4.2关键路径6.4.3最小代价生成树6.4.4最短路径7 搜索(Search)7.1搜索的基本概念7.2顺序搜索法7.3二分搜索法7.4 B-树及其基本操作7.5散列(Hash)表7.6搜索算法的分析及应用8 内排序8.1排序的基本概念8.2简单选择排序8.3直接插入排序8.4冒泡排序(bubble sort)8.5希尔排序(shell sort)8.6快速排序8.7堆排序8.8两路合并排序(merge sort) 8.9基数排序8.10各种内部排序算法的比较8.11内部排序算法的应用。
中国农业大学_821数据结构_《数据结构》习题(9)

第9章内部排序一、问答题1. 什么是内部排序?什么是排序方法的稳定性?2. 对于本章介绍的内部排序方法,哪几种是稳定的?哪几种是不稳定的?对不稳定的排序方法试举例说明。
3. 对于给定的一组记录的关键字:23,13,17,21,30,60,58,28,30,90。
试分别写出用下列排序方法对其进行排序时,每一趟排序后的结果:(1)直接插入排序;(2)希尔排序;(3)冒泡排序;(4)直接选择排序;(5)快速排序(6)堆排序(7)归并排序。
4. 对长度为n的记录序列进行快速排序时,所需要的比较次数依赖于这n个元素的初始序列。
(1)n = 8时,在最好的情况下需要进行多少次比较?试说明理由。
(2)给出n = 8时的一个最好情况的初始排列实例。
5 试为下列各种情况选择合适的排序方法:(1)n = 30,要求在最坏的情况下,排序速度最快;(2)n = 30,要求排序速度既要快,又要排序稳定。
6. 判别以下序列是否为堆(所有的非叶子结点的关键字值k i均不大于其左右两个分支结点的关键字值k2和k2i+1。
),如果不是,则把它调整为堆。
(1)( 100, 86, 48, 73, 35, 39, 42, 57, 66, 21 );(2)( 12, 70, 33, 65, 24, 56, 48, 92, 86, 33 );(3)( 103, 97, 56, 38, 66, 23, 42, 12, 30, 52, 06, 20 );(4) ( 05, 56, 20, 03, 23, 40, 38, 29, 61, 05, 76, 28, 100 )。
7. 一组待排序记录的关键字是:986,321,123,432,500,654,018,765,987,210。
按照LSD方法写出基数排序的过程和结果。
8. 试证明:如果对于一个长度为n的任意文件进行排序,则至少需进行nlog2n次比较。
9. 试构造对5个整数元素进行排序,最多只用7次比较的算法思想。
数据结构科目考研大纲

数据结构科目考研大纲
数据结构是计算机科学与技术专业考研的重要科目之一,其大纲主要包括以下内容:
一、基本概念。
1. 数据结构的基本概念和术语。
2. 算法的基本概念和特性。
3. 算法复杂度分析。
二、线性表。
1. 线性表的顺序存储结构和链式存储结构。
2. 线性表的基本操作及实现。
3. 线性表的应用。
三、栈和队列。
1. 栈和队列的定义和基本操作。
2. 栈和队列的顺序存储结构和链式存储结构。
3. 栈和队列的应用。
四、树与二叉树。
1. 树的基本概念和性质。
2. 二叉树的基本概念和性质。
3. 二叉树的存储结构和基本操作。
4. 树和二叉树的遍历。
五、图。
1. 图的基本概念和性质。
2. 图的存储结构和基本操作。
3. 图的遍历和最小生成树。
4. 图的最短路径和拓扑排序。
六、查找。
1. 查找的基本概念和分类。
2. 顺序查找和折半查找。
3. 散列查找和二叉排序树。
七、排序。
1. 排序的基本概念和分类。
2. 插入排序、交换排序、选择排序。
3. 快速排序、堆排序、归并排序。
4. 外部排序。
以上是数据结构科目考研大纲的主要内容,考生在备考过程中需要深入理解各个知识点,并能够灵活应用到实际问题中。
希望对你有所帮助。
《数据结构821》考试大纲

《数据结构(821)》考试大纲一、考试要求:本课程要求掌握数据结构的基本理论知识,常用数据结构及对应的基本算法,以及数据结构的程序实现技能。
内容包括线性表、栈、队列、树、图等常见结构的逻辑结构、存储结构和对应的常用基本算法,以及查找和排序的基本概念和常用算法。
会做简单的算法分析,包括算法的时间代价和空间代价。
会分析研究计算机加工的数据结构的特性,以便为应用涉及的数据选择适当的逻辑结构、存储结构及相应的算法。
课程考试中既测试对基本知识、基本理论的掌握程度,又测试对基本知识与基本理论的灵活运用能力。
二、考试内容:1.绪论(1)数据结构基本概念和术语;(2)算法描述的方法;(3)逻辑结构、存储结构及数据运算三方面的要领及相互关系;(4)算法复杂度的分析方法。
2.线性表(1)线性表的逻辑特性;(2)两类不同的存储结构(顺序和链式存储结构)的异同;(3)单链表、循环链表、双向链表的特点;(4)线性表在顺序存储结构中实现基本运算(查找、插入、删除、合并等)的算法及分析;(5)线性表在链式存储结构中实现基本运算(查找、插入、删除、合并等)的算法及分析;(6)用时间和空间复杂度分析线性表的特点。
3.栈和队列(1)栈和队列的基本概念;(2)栈和队列在存储结构上的基本运算的实现;(3)循环队列中对边界条件的处理;(4)栈的典型应用并能编程实现。
4.串(1)串的逻辑结构定义;(2)串的基本运算及其实现;(3)串的堆分配存储结构;(4)串的模式匹配算法。
5.数组和广义表(1)数组的逻辑结构和存储结构;(2)数组在以行为主的存储结构中地址的计算方法;(3)特殊矩阵的压缩存储方式及下标变换公式;(4)稀疏矩阵压缩存储方法的特点和适用范围,三元组表示的稀疏矩阵进行矩阵运算时采用的处理方法。
6.树和二叉树(1)树的定义和基本术语;(2)二叉树的定义;(3)二叉树的结构特性及相应的证明方法;(4)二叉树的各种存储结构特点及使用范围;(5)二叉树的各种遍历算法;(6)线索二叉树的定义;(7)树的存储结构;(8)树和二叉树的转换方法;(9)最优二叉树的特性;(10)建立最优二叉树和实现Huffman编码的方法。
2020年中国农业大学821数据结构考试大纲

821数据结构考试大纲一、考查目标1.理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异,以及各种基本操作的实现。
2.掌握基本的数据处理原理和方法的基础上,能够对算法进行设计与分析。
3.能够选择合适的数据结构和方法进行问题求解。
二、考试形式和试卷结构1.试卷满分及考试时间试卷满分150分,考试时间180分钟。
2.答题方式答题方式为笔试、闭卷。
3.试卷内容与题型结构单选题10题每小题2分共20分填空题10题每小题2分共20分简答题5题每小题5分共25分综合题3题每小题15分共45 分算法题4题每小题10分共40 分三、考查内容1.概念(1)基本概念和术语●数据●数据结构●抽象数据类型(2)算法的描述和分析●算法、算法的时间复杂度和空间复杂度概念●算法描述和算法分析的方法,对于一般算法能分析出时间复杂度2.线性表(1)线性表的概念●线性表的逻辑结构●线性表的存储结构:顺序表,单链表,双链表,循环链表,静态链表(2)线性表的实现●顺序存储结构:查找、插入、删除等基本操作及其平均时间性能分析●链式存储结构:查找、插入、删除等基本操作及其平均时间性能分析3.栈、队列(1)栈和队列的概念●栈和队列的逻辑结构●栈和队列的存储结构:顺序栈,循环队列,链式栈,链式队列(2)栈和队列的实现●顺序存储结构:入栈、出栈、入队、出队等基本操作及其平均时间性能分析●链式存储结构:入栈、出栈、入队、出队等基本操作及其平均时间性能分析4.数组和广义表(1)数组和广义表的概念●数组和广义表的逻辑结构●数组的存储结构:特殊矩阵压缩存储、稀疏矩阵压缩存储(三元组表)●广义表的存储结构:链式存储(2)数组和广义表的实现●数组顺序存储结构:一般数组顺序存储的地址计算方法●广义表链式存储结构:非空广义表的求表头和表尾等基本操作5.树和二叉树(1)树和二叉树的概念●树和二叉树的逻辑结构●树和二叉树的存储结构:树的孩子兄弟表示法、二叉树的二叉链表●树和二叉树的遍历:树的三种遍历方法、二叉树的三种遍历方法●树和二叉树的转换方法(2)树和二叉树的实现●二叉树的递归遍历●Huffman树●Huffman编码6.图(1)图的概念●图的逻辑结构●图的存储结构:邻接矩阵、邻接表●图的遍历:深度优先搜索方法、广度优先搜索方法(2)图的实现●最小(代价)生成树:Prim和Kruskal方法●最短路径:Dijkstra方法●拓扑排序●关键路径7.查找(1)查找的概念●查找表、查找分类、查找结构●查找算法效率的评判标准:平均查找长度(2)静态表及其查找●顺序查找●折半查找(3)动态表及其查找●二叉排序树●平衡二叉树(4)Hash表及其查找●Hash函数●处理冲突方法●Hash查找(5)各种查找算法的分析8.排序(1)排序的概念●排序方法稳定性、排序分类●排序算法效率的评判标准(2)插入排序●简单插入排序●希尔排序(3)交换排序●冒泡排序●快速排序(4)选择排序●简单选择排序●堆排序(5)归并排序●二路归并排序●分治归并排序(6)各种排序算法的比较四、题型举例1.选择题在单链表中成功查找一个元素的等概率下的平均搜索长度是。
数据结构课程考研大纲

数据结构课程考研大纲一、概述数据结构是计算机科学中至关重要的一门课程,它研究如何有效地存储、组织和处理数据。
在考研中,数据结构也是一门重要的考试科目,其考试大纲是考生备考的重要参考。
本大纲旨在为考生提供数据结构课程考研所需的知识点和技能要求。
二、考试目标1. 掌握数据结构的基本概念,如数据类型、抽象数据类型、数据结构分类等。
2. 了解常见的数据结构,如线性结构(数组、链表)、树形结构(二叉树)、图形结构(图、堆)、字符串结构等。
3. 掌握常见的数据操作,如插入、删除、搜索、排序等。
4. 能够灵活运用各种数据结构解决实际问题,包括算法设计、时间复杂度分析、空间优化等。
三、考试内容与要求1. 数据结构的基本概念和术语,包括抽象数据类型、数据结构分类等。
2. 线性结构(数组、链表):要求考生掌握数组和链表的基本操作和实现,了解数组和链表的优缺点和应用场景。
3. 树形结构(二叉树):要求考生掌握二叉树的基本概念、遍历方法和应用场景,能够实现二叉搜索树和堆等特殊结构。
4. 图形结构(图、堆):要求考生掌握图的基本概念和术语,了解图的存储方式(邻接矩阵、邻接表等),掌握图的遍历算法(深度优先搜索、广度优先搜索等)和最短路径算法。
堆是一种特殊的树形结构,要求考生了解最小堆和最大堆的基本概念和实现方法。
5. 字符串结构:要求考生了解字符串的基本概念和操作,能够实现字符串的匹配算法(朴素匹配、KMP算法等)。
6. 常见的数据操作和算法设计,包括插入、删除、搜索、排序等操作,以及各种数据结构的综合应用。
7. 时间复杂度分析和空间优化:要求考生能够分析算法的时间复杂度,了解空间优化的方法。
四、考试形式与题型1. 考试形式:闭卷笔试,考试时间为3小时。
2. 题型:选择题、填空题和简答题。
选择题和填空题主要考查考生对数据结构和基本概念的理解和掌握情况,简答题主要考查考生对数据操作的实现和算法设计能力。
3. 题量:试卷总题量约为100道题。
计算机专业基础综合(821)

计算机专业基础综合(821)(原创版)目录一、计算机专业基础综合(821)概述二、计算机专业基础综合(821)的考试内容三、计算机专业基础综合(821)的备考策略四、计算机专业基础综合(821)的考试技巧五、计算机专业基础综合(821)的发展趋势正文一、计算机专业基础综合(821)概述计算机专业基础综合(821)是我国计算机专业硕士研究生入学考试的一门重要科目,旨在考查考生对计算机专业基础知识的掌握程度,以及运用所学知识解决实际问题的能力。
该科目涵盖了计算机专业的核心课程,如数据结构、操作系统、计算机网络、数据库原理等。
二、计算机专业基础综合(821)的考试内容计算机专业基础综合(821)的考试内容包括以下几个方面:1.数据结构:主要考查线性表、栈与队列、树与二叉树、图及其相关概念和操作。
2.操作系统:主要考查操作系统的基本概念、进程管理、存储管理、文件系统和设备管理等内容。
3.计算机网络:主要考查计算机网络的基本概念、体系结构、网络协议和技术等。
4.数据库原理:主要考查数据库的基本概念、数据模型、数据库设计和 SQL 语言等。
三、计算机专业基础综合(821)的备考策略1.制定合理的学习计划:根据自己的基础和实际情况,合理安排时间,确保每个知识点都能得到充分的复习。
2.掌握重点和难点:针对考试大纲,把握重点和难点,加强针对性复习。
3.多做练习和模拟试题:通过做历年真题、模拟试题和题库中的题目,熟练掌握考试题型,提高解题能力。
4.及时总结和反馈:在学习过程中,要定期总结自己的学习情况,找出不足之处,及时调整学习方法。
四、计算机专业基础综合(821)的考试技巧1.熟悉考试大纲和题型:了解考试大纲的要求,熟悉各种题型的解题方法和技巧。
2.控制答题时间:合理分配答题时间,确保每道题目都能在规定时间内完成。
3.注意答题技巧:回答问题时要条理清晰、简明扼要,避免冗长和无关紧要的叙述。
4.保持良好的心态:考试过程中要保持冷静,遇到难题时要沉着应对,尽量发挥自己的水平。
821数据结构考试科目大纲

一考查目标该科目是为招收生物物理等专业从事农业生物信息处理方向的硕士生设置的具有选拔性的考试科目。
其目的是科学、平等、有效地测试考生是否具备从事程序设计和信息处理的基本素质和培养潜能。
考试要求学生比较系统地控制数据结构课程的概念、基本原理和主意,能够运用所学的基本原理和主意分析和解决生物信息处理研究中相关的理论和应用问题。
详细来说,要求考生:1.理解数据结构的基本概念,逻辑结构、存储结构及其差异,以及各种数据结构的抽象数据类型的实现。
2.能够设计数据结构中涉及到的算法,并分析算法的性能。
3.能够挑选合适的数据结构和算法举行非数值类应用问题的求解。
二考试形式和试卷结构1.试卷满分及考试时光试卷满分150分,考试时光180分钟。
2.答题方式答题方式为笔试、闭卷。
3.试卷内容与题型结构简答题 6题每小题5分共 30分算法分析题 2题每小题 10分共20分算法设计题 2题每小题20分共40分应用题 3题每小题20分共60 分三考查内容1.基本概念和术语数据元素、数据结构、抽象数据类型等概念算法设计的基本要求算法时光复杂度和空间复杂度的估算2. 线性表线性表的定义和基本操作线性表的顺序存储实现线性表的链式存储实现线性表的应用3. 栈和队列栈和队列的基本概念栈和队列的顺序存储结构栈和队列的链式存储结构栈和队列的应用4. 树与二叉树树的概念二叉树二叉树的定义及其主要特征二叉树的顺序存储结构和链式存储结构二叉树的遍历线索二叉树的基本概念和构造二叉排序树平衡二叉树树、森林树的存储结构森林与二叉树的转换树和森林的遍历哈夫曼树和哈夫曼编码5. 图图的概念图的存储结构及基本操作邻接矩阵邻接表图的遍历深度优先搜索广度优先搜索图的基本应用最小(代价)生成树拓扑排序关键路径最短路径6. 寻找寻找的基本概念顺序寻找法折半寻找法B-树散列(Hash)表及其寻找寻找算法的分析及应用7.内部排序排序的基本概念插入排序直接插入排序折半插入排序气泡排序容易挑选排序希尔排序迅速排序堆排序二路归并排序(merge sort)基数排序各种内部排序算法的比较四题型举例1. 简答题试比较顺序表和单链表在存贮空间以及插入和删除操作的特点2. 算法分析题请写出以下算法所实现的功能,算法在最好情况下和最差情况下的时光复杂度,并用大O表示法写出算法的渐进时光复杂度。
新版中国农业大学农业工程与信息技术考研经验考研参考书考研真题

考研,说不痛苦都是假的,但其实最多的是辛苦。
下定决心准备考研是从大三结束的那个暑假开始的,所以想说:只要努力开始,一切都来得及。
在这场考试中,我确实也发挥出了最佳实力,多少也算是逆袭,成功上岸。
对于开始的过程来说谁也做不到完美,所以只能在有限时间内,争取做最有效的提升,更要关注自己不擅长的地方。
避免在不擅长的地方出现更大的问题。
话说回来,对于所有科目来说,付出与分数是成正比的,所以千万不要抱着侥幸心理去学习!一定要掌握好基础,循序渐进的努力用功才行!对于备考策略,之前从很多学长学姐经验贴里学到的再加上自己这几个月的经验,所以跟大家分享一下我的经验。
我不是什么大神级别的人,也不能够帮助自认为是学渣的孩子复习没几天就能逆袭成学神,但是我的这些经验对于跟我一样,资质普通的考生来讲应该还是有一些借鉴意义的。
首先,我不鼓励大家去经历头悬梁锥刺股的那种学习的刻苦,都什么年代了,提高学习效率的方法多的是,找到适合自己的学习方法远比头悬梁锥刺股来的让人开心。
下面就讲讲我的备考经验吧,也希望大家早日找到适合自己的学习节奏和学习方法。
篇幅总体会比较长,只因,考研实在是一项大工程,真不是一两句话可描述完的。
所以希望大家耐心看完,并且会有所帮助。
文章结尾处附上我自己备考阶段整理的学习资料,大家可以自取。
中国农业大学农业工程与信息技术的初试科目为:(101)思想政治理论(201)英语一(341)农业知识综合三(809)地理信息系统或(820)电路原理或(821)数据结构或(833)电子技术参考书目为:1、《地理信息系统 -原理、方法和应用》,科学出版社,邬伦主编2、《遥感概论》,高等教育出版社,彭望 Lu、白振平等编著先说一下我的英语单词复习策略最重要的就是两个环节:单词和真题。
关于单词单词一定要会,不用着急做题,先将单词掌握牢,背单词的方式有很多,我除了用乱序单词,我还偏好使用手机软件,背单词软件有很多,你们挑你们用的最喜欢的就好,我这里就不做分享了。
中国农业大学821数据结构2019年考研专业课初试大纲

2019年中国农业大学考研专业课初试大纲
821数据结构考试大纲
一、考查目标
1.理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异,以及各种基本操作的实现。
2.掌握基本的数据处理原理和方法的基础上,能够对算法进行设计与分析。
3.能够选择合适的数据结构和方法进行问题求解。
二、考试形式和试卷结构
1.试卷满分及考试时间
试卷满分150分,考试时间180分钟。
2.答题方式
答题方式为笔试、闭卷。
3.试卷内容与题型结构
单选题10题每小题2分共20分
填空题10题每小题2分共20分
简答题 5题每小题5分共25分
综合题 3题每小题15分共45 分
算法题 4题每小题10分共40 分
三、考查内容
1.概念
(1)基本概念和术语
●数据
●数据结构
●抽象数据类型
(2)算法的描述和分析
●算法、算法的时间复杂度和空间复杂度概念
●算法描述和算法分析的方法,对于一般算法能分析出时间复杂度
2.线性表
(1)线性表的概念
1
精都考研网(专业课精编资料、一对一辅导、视频网课)。
2020年硕士研究生入学考试自命题科目考试大纲

2020年硕士研究生入学考试自命题科目考试大纲科目代码:821 科目名称:计算机专业基础综合一、考试要求本科目涵盖数据结构与算法、计算机原理两门学科专业基础课程。
要求考生系统地掌握上述专业课程的基本概念、基本原理和基本方法,能够综合运用所学的基本原理和基本方法分析、判断和解决有关理论问题和实际问题。
二、考试内容(一)数据结构与算法部分1.数据结构与算法基本概念线性表、栈与队列、树与二叉树、B-树、B+-树、图、稀疏矩阵、贪心法、动态规划法、递归与分治、回溯法、分支限界法。
2.基本数据结构的应用栈与队列的应用、内排序算法、线性表的查找方法、二叉排序树的应用、堆排序、Huffman算法、图的搜索、最小代价生成树、最短路径、AOV网的拓扑排序、AOE网的关键路径。
3.算法设计与分析能运用数据结构与算法的知识解决非数值问题的数据抽象、算法设计、C(或C++)语言算法实现。
(二)计算机原理部分1.计算机系统概述计算机系统层次结构,包括计算机硬件的基本组成、计算机软件的分类;性能指标,包括主频(CPU时钟周期)、运算速度(CPI、CPU执行时间、MIPS、MFLOPS)等。
2.指令系统计算机中的数据表示,包括定点数和浮点数的表示、校验码;计算机的指令格式,包括指令的基本格式、扩展操作码的指令格式;指令的寻址方式,包括数据寻址和指令寻址、常用寻址方式等。
3.计算机中的运算计算机中的基本运算,包括逻辑及移位运算;定点数的加(减)、乘、除法运算;浮点数的加(减)、乘、除法运算;运算器的设计,包括算术逻辑单元ALU、串/并行加法器、浮点运算器等。
4.中央处理器流水线的基本概念;硬连线控制器的基本概念及设计;微程序控制器的基本概念及实现方法。
5.存储层次结构主存储器的基本概念及设计使用;高速缓冲存储器(Cache)、虚拟存储器的基本概念和性能评估。
6.输入输出(I/O)系统输入输出系统的基本概念;I/O设备和I/O接口;三种I/O控制方式,包括程序查询、中断驱动和DMA方式。
中国农业大学_821数据结构_《数据结构》考试大纲

数据结构(Data Structure)考试大纲一、课程性质与设置目的1. 课程性质和特点数据结构是高等院校计算机科学、信息科学及相关专业考试计划中一门专业基础课,在计算机软件的各个领域中均会使用到数据结构的有关知识。
本课程的目的和任务是使学习者较全面地掌握各种常用的数据结构,为学习后续软件课程提供必要的基础,提高运用数据结构解决实际问题的能力。
2. 本课程的基本要求从数据结构的逻辑结构、存储结构和数据运算三个方面去掌握线性表、栈、队列、串、数组、广义表、树、图和文件等常用的数据结构。
掌握在各种常用的数据结构上实现的排列和查找运算。
对算法的时间和空间复杂性有一定的分析能力。
针对简单的应用问题,应能选择合适的数据结构及设计有效的算法解决之。
3. 与相关课程的联系本课程的先修课程为离散数学和高级语言程序设计,后续课程为操作系统、数据库原理等。
数据结构中存储结构及基本运算的实现需要程序设计的基本知识和编程的经验及能力,本课程的大部分实例均是用C语言实现的,故要求较熟练地掌握C语言。
二、考试内容与考核目标第1章数据结构概述1. 课程内容(1) 基本概念和术语(2) 学习数据结构的意义(3) 算法的描述和分析2. 学习目的与要求本章的目的是介绍数据结构中常用的基本概念和术语以及学习数据结构的意义,要求了解本章介绍的各种基本概念和术语,掌握算法描述和分析的方法。
本章重点是了解数据结构的逻辑结构、存储结构及数据的运算三方面的概念及相互关系,难点是算法复杂度的分析方法。
3. 考核知识点与考核要求1. 数据结构的基本概念和术语、要求达到“识记”层次。
1.1 数据、数据元素、数据项、数据结构等基本概念。
1.2 数据结构的逻辑结构、存储结构及数据运算的含义及其相互关系。
1.3 数据结构的两大类逻辑结构和四种常用的存储表示方法。
2. 数据结构在软件系统中的作用,要求达到“识记”层次。
2.1 数据结构在各种软件系统中所起的作用。
中国农业大学硕士研究生入学考试初试模拟题821数据结构(三套)

中国农业大学
2011 年攻读硕士学位研究生入学考试模拟试题(一)
科目代码: 821 科目名称: 数据结构
考生注意: 所有大题务必书写在考场提供的答题纸上,写在本试题单上的答题一 律无效(本题单不参与阅卷) 。
报考专业: 一、选择题 1. 算法的时间复杂度取决于( ) A.问题的规模 B. 待处理数据的初态 C. A 和 B
四、假设按低下标优先存储整型数组 A(-3:8,3:5,-4:0,0:7)时,第一个元素的字节 存储地址是 100,每个整数占 4 个字节,问 A(0,4,-2,5)的存储地址是什么?
五、算法题 1.设 s、t 为两个字符串,分别放在两个一维数组中,m、n 分别为其长度,判断 t 是否为 s 的子串。如果是,输出子串所在位置(第一个字符) ,否则输出 0。 (注:用程序实现)
2.下面关于线性表的叙述中,错误的是哪一个? A.线性表采用顺序存储,必须占用一片连续的存储单元。 B.线性表采用顺序存储,便于进行插入和删除操作。 报考院校: C.线性表采用链接存储,不必占用一片连续的存储单元。 3. 栈在( )中应用。 B. 子程序调用 C. 表达式求值 D. A,B,C )
A. 递归调用
9 如果要求一个线性表既能较快的查找, 又能适应动态变化的要求, 则可采用( A. 分快查找 B. 顺序查找 C. 折半查找 D. 基于属性
10 组记录的关键码为(46,79,56,38,40,84) ,则利用快速排序的方法,以第一个记录 为基准得到的一次划分结果为( A.(38,40,46,56,79,84) C.(40,38,46,56,79,84) ) 。 B. (40,38,46,79,56,84) D. (40,38,46,84,56,79)
2.已知深度为 h 的二叉树以一维数组 BT(1:2 -1)作为其存储结构。请写一算法,求该二叉 树中叶结点的个数。
中国农业大学_821数据结构_《数据结构》习题(8)

6. 已知长度为 12 的表 ( Jan, Feb, Mar, Apr, May, Jun, July, Aug,, Sep, Oct, Nov, Dec ): (1) 试按表中顺序依次将元素插入一棵初始为空的二叉树。 (字符之间以字典顺序比较 大小) 画出插入完成之后的二叉排序树, 且求在等概率的情况下查找成功的平均查找长度。 (2) 如果对表中元素先排序构成有序表,试求在等概率情况下对有序表进行折半查找 时,查找成功的平均查找长度。 (3) 按表中元素顺序构造出一棵相应的平衡二叉树,并求出在等概率的情况下查找成 功的平均查找长度。 7. B+树和 B-树的主要差异树什么? 8. 什么叫哈希法?哈希法中为什么会出现冲突? 9. 设关键值集合为 { 016, 087, 154, 170, 275, 426, 503, 509, 512, 612, 653, 678 },设计 一种哈希表,取装填因子 = 0.5,根据选择的哈希函数,计算出对应的地址,并统计出发 生冲突的次数。 10. 设关键值集合为 { SUN, GAO, HUA, WAN, PEN, YAN, LIU, ZHE, YAO, CHE }, 试 构造装填因子 = 10/13 的哈希表,取关键值的首字母在字母表中的序号(字典序)作为哈 希函数值,用线性探测法解决冲突,画出其哈希表。 11. 假定一个待哈希存储的线性表为 ( 32, 75, 63, 48, 94, 25, 36, 18, 70 ), 哈希地址空间 为[ 0 . . 10 ],如果采用除留余数法构造哈希函数和分别采用步长为 1 及步长为 3 的线性探 测法处理冲突,试分别给出它们对应的哈希表,并分别求出在等概率情况下查找成功时的 平均查找长度。 12. 将序列 (13, 15, 22, 8, 34, 19, 21) 插到一个初始时是空的哈希表中, 哈希函数采用 hash (x) = 1 + ( x MOD 7 )。 (1) 使用线性探测法解决冲突; (2) 使用步长为 3 的线性探测法解决冲突;
820计算机专业基础考纲

820计算机专业基础
考试形式
笔试(闭卷)
考试时间
180分钟
考试总分
150分
本科目包括《数据结构》和《计算机操作系统》两门课程,总分150分,两门课程各占75分
《数据结构》
一、总体要求
《数据结构》是计算机程序设计的重要理论技术基础,是计算机科学与技术学科的核心课程。要求:
1.理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异,以及各种基本操作的实现。
(4)算法时间复杂度和空间复杂度的分析方法。
2.线性表
(1)线性表的定义
(2)线性表的基本操作及在顺序存储及链式存储上的实现;
(3)各种变形链表(循环链表、双向链表、带头结点的链表等)的表示和基本操作的实现;
(4)递归过程的特点及实现方法;
(5)栈和队列的基本概念;栈和队列的顺序存储结构、链式储存结构及其存储特点;(6)栈和队列的应用
2.掌握基本的数据处理原理和方法的基础上,能够分析算法的时间复杂度与空间复杂度。
3.能够选择合适的数据结构和算法策略进行问题求解,具备采用 C 或 C++或 JAVA 语言设计与实现算法的能力。
二、内容
1. 数据结构及算法的相关概念和术语
(1)数据结构及算法的概念;
(2)数据的逻辑结构和存储结构;
(3)算法的定义及特性;
2)进程的同步与互斥:临界资源、临界区、进程同步与互斥问题、信号量机制以及P、V操作、管程机制。
3)进程间通信:进程通信的类型(直接通信和间接通信方式)、消息传递系统中的几个问题、消息缓冲队列通信机制。
4)线程与进程的调度:线程与进程的基本概念,调度的类型、调度队列模型、调度方式、进程调度算法(先来先服务、短进程优先、时间片轮转、基于优先级的调度算法等)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
821数据结构考试大纲
一、考查目标
1.理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异,以及各种基本操作的实现。
2.掌握基本的数据处理原理和方法的基础上,能够对算法进行设计与分析。
3.能够选择合适的数据结构和方法进行问题求解。
二、考试形式和试卷结构
1.试卷满分及考试时间
试卷满分150分,考试时间180分钟。
2.答题方式
答题方式为笔试、闭卷。
3.试卷内容与题型结构
单选题10题每小题2分共20分
填空题10题每小题2分共20分
简答题 5题每小题5分共25分
综合题 3题每小题15分共45 分
算法题 4题每小题10分共40 分
三、考查内容
1.概念
(1)基本概念和术语
●数据
●数据结构
●抽象数据类型
(2)算法的描述和分析
●算法、算法的时间复杂度和空间复杂度概念
●算法描述和算法分析的方法,对于一般算法能分析出时间复杂度
2.线性表
(1)线性表的概念
●线性表的逻辑结构
●线性表的存储结构:顺序表,单链表,双链表,循环链表,静态链表
(2)线性表的实现
●顺序存储结构:查找、插入、删除等基本操作及其平均时间性能分析
●链式存储结构:查找、插入、删除等基本操作及其平均时间性能分析3.栈、队列
(1)栈和队列的概念
●栈和队列的逻辑结构
●栈和队列的存储结构:顺序栈,循环队列,链式栈,链式队列
(2)栈和队列的实现
●顺序存储结构:入栈、出栈、入队、出队等基本操作及其平均时间性能分析
●链式存储结构:入栈、出栈、入队、出队等基本操作及其平均时间性能分析4.数组和广义表
(1)数组和广义表的概念
●数组和广义表的逻辑结构
●数组的存储结构:特殊矩阵压缩存储、稀疏矩阵压缩存储(三元组表)
●广义表的存储结构:链式存储
(2)数组和广义表的实现
●数组顺序存储结构:一般数组顺序存储的地址计算方法
●广义表链式存储结构:非空广义表的求表头和表尾等基本操作
5.树和二叉树
(1)树和二叉树的概念
●树和二叉树的逻辑结构
●树和二叉树的存储结构:树的孩子兄弟表示法、二叉树的二叉链表
●树和二叉树的遍历:树的三种遍历方法、二叉树的三种遍历方法
●树和二叉树的转换方法
(2)树和二叉树的实现
●二叉树的递归遍历
●Huffman树
●Huffman编码
6.图
(1)图的概念
●图的逻辑结构
●图的存储结构:邻接矩阵、邻接表
●图的遍历:深度优先搜索方法、广度优先搜索方法
(2)图的实现
●最小(代价)生成树:Prim和Kruskal方法
●最短路径:Dijkstra方法
●拓扑排序
●关键路径
7.查找
(1)查找的概念
●查找表、查找分类、查找结构
●查找算法效率的评判标准:平均查找长度
(2)静态表及其查找
●顺序查找
●折半查找
(3)动态表及其查找
●二叉排序树
●平衡二叉树
(4)Hash表及其查找
●Hash函数
●处理冲突方法
●Hash查找
(5)各种查找算法的分析
8.排序
(1)排序的概念
●排序方法稳定性、排序分类
●排序算法效率的评判标准
(2)插入排序
●简单插入排序
●希尔排序
(3)交换排序
●冒泡排序
●快速排序
(4)选择排序
●简单选择排序
●堆排序
(5)归并排序
●二路归并排序
●分治归并排序
(6)各种排序算法的比较
四、题型举例
1.选择题
在单链表中成功查找一个元素的等概率下的平均搜索长度是。
A. n
B. n/2
C. (n+1)/2
D. n+1 2.填空题
深度为5的二叉树至多有个结点。
3.简答题
请比较顺序表和单链表在存储空间和数据访问方面的特点。
4.综合题
已知一棵二叉树的先序遍历的结果是ABDECF,中序遍历的结果是DEBAFC,请画出这棵二叉树,并写出该二叉树的后序遍历结果。
5.算法题
分析下面算法功能,以及时间复杂度。
#define List_Size 100
typedef struct {
ElemType elem[List_Size];
int length;
} SqList;
void ex(SqList la, SqList lb, SqList &lc) {
i=0; j=0; k=0;
while(i<la.length && j<lb.length) {
if(la.elem[i]<=lb.elem[j]) lc.elem[k++]=la.elem[i++];
else lc.elem[k++]=lb.elem[j++];
}
while(i<la.length) lc.elem[k++]=la.elem[i++];
while(j<lb.length) lc.elem[k++]=lb.elem[j++];
} // ex
(2) 用循环单链表实现队列,要求该队列只使用一个指向队尾指针。
请写出结点和队列的类型定义,并分别编写队列初始化、入队、出队算法。
五、参考教材
(1) 数据结构-基于C语言的描述,彭波主编,清华大学出版社
(2) 数据结构,严蔚敏编著,清华大学出版社。