当前位置:文档之家› 广东工业大学831数据结构与C语言专业课考研真题(2020年)

广东工业大学831数据结构与C语言专业课考研真题(2020年)

广东工业大学831数据结构与C语言专业课考研真题(2020年)

计算机数据结构考研真题及其答案

第1章绪论 一、选择题 1. 算法的计算量的大小称为计算的()。【北京邮电大学2000 二、3 (20/8分)】 A.效率 B. 复杂性 C. 现实性 D. 难度2. 算法的时间复杂度取决于()【中科院计算所 1998 二、1 (2分)】 A.问题的规模 B. 待处理数据的初态 C. A和B 3.计算机算法指的是(1),它必须具备(2)这三个特性。 (1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法 (2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性 C. 确定性、有穷性、稳定性 D. 易读性、稳定性、安全性 【南京理工大学 1999 一、1(2分)【武汉交通科技大学 1996 一、1( 4分)】 4.一个算法应该是()。【中山大学 1998 二、1(2分)】 A.程序 B.问题求解步骤的描述 C.要满足五个基本特性D.A和C. 5. 下面关于算法说法错误的是()【南京理工大学 2000 一、1(1.5分)】 A.算法最终必须由计算机程序实现 B.为解决某问题的算法同为该问题编写的程序含义是相同的 C. 算法的可行性是指指令不能有二义性 D. 以上几个都是错误的 6. 下面说法错误的是()【南京理工大学 2000 一、2 (1.5分)】 (1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法 (3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低 A.(1) B.(1),(2) C.(1),(4) D.(3) 7.从逻辑上可以把数据结构分为()两大类。【武汉交通科技大学 1996 一、4(2分)】 A.动态结构、静态结构 B.顺序结构、链式结构

数据结构C语言第三版习题5参考答案

习题5参考答案 5.1 选择 (1)C(2)B(3)C(4)B(5)C(6)D(7)C(8)C(9)B(10)C (11)B(12)C(13)C(14)C(15)C(16)B 5.2 填空 (1)1 (2)1036;1040 (3)2i (4) 1 ; n ; n-1 ; 2 (5)2k-1;2k-1 (6)ACDBGJKIHFE (7)p->lchild==NULLL (8)Huffman树 (9)其第一个孩子; 下一个兄弟 (10)先序遍历;中序遍历 5.3 叶子结点:C、F、G、L、I、M、K; 非终端结点:A、B、D、E、J; 各结点的度: 结点: A B C D E F G L I J K M 度: 4 3 0 1 2 0 0 0 0 1 0 0 树深:4 5.4 无序树形态如下: 二叉树形态如下:

5.5 二叉链表如下: 三叉链表如下: 5.6 先序遍历序列:ABDEHICFJG

中序遍历序列:DBHEIAFJCG 后序遍历序列:DHIEBJFGCA 5.7 (1) 先序序列和中序序列相同:空树或缺左子树的单支树; (2) 后序序列和中序序列相同:空树或缺右子树的单支树; (3) 先序序列和后序序列相同:空树或只有根结点的二叉树。 5.8 这棵二叉树为: 5.9 先根遍历序列:ABFGLCDIEJMK 后根遍历序列:FGLBCIDMJKEA 层次遍历序列:ABCDEFGLIJKM 5.10 证明:设树中结点总数为n,叶子结点数为n0,则 n=n0 + n1 + …… + n m (1) 再设树中分支数目为B,则 B=n1 + 2n2 + 3n3+ …… + m n m (2) 因为除根结点外,每个结点均对应一个进入它的分支,所以有 n= B + 1 (3) 将(1)和(2)代入(3),得 n0 + n1 + …… + n m = n1 + 2n2 + 3n3+ …… + m n m + 1 从而可得叶子结点数为: n0 = n2 + 2n3+ …… + (m-1)n m + 1 5.11 由5.10结论得,n0 = (k-1)n k + 1 又由 n=n0 + n k,得n k= n-n0,代入上式,得 n0 = (k-1)(n-n0)+ 1 叶子结点数为:n0 = n (k-1) / k

数据结构(C语言版)第三版__清华大学出版社_习题参考答案

附录习题参考答案 习题1参考答案 1.1.选择题 (1). A. (2). A. (3). A. (4). B.,C. (5). A. (6). A. (7). C. (8). A. (9). B. (10.) A. 1.2.填空题 (1). 数据关系 (2). 逻辑结构物理结构 (3). 线性数据结构树型结构图结构 (4). 顺序存储链式存储索引存储散列表(Hash)存储 (5). 变量的取值范围操作的类别 (6). 数据元素间的逻辑关系数据元素存储方式或者数据元素的物理关系 (7). 关系网状结构树结构 (8). 空间复杂度和时间复杂度 (9). 空间时间 (10). Ο(n) 1.3 名词解释如下: 数据:数据是信息的载体,是计算机程序加工和处理的对象,包括数值数据和非数值数据。数据项:数据项指不可分割的、具有独立意义的最小数据单位,数据项有时也称为字段或域。数据元素:数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理,一个数据元素可由若干个数据项组成。 数据逻辑结构:数据的逻辑结构就是指数据元素间的关系。 数据存储结构:数据的物理结构表示数据元素的存储方式或者数据元素的物理关系。 数据类型:是指变量的取值范围和所能够进行的操作的总和。 算法:是对特定问题求解步骤的一种描述,是指令的有限序列。 1.4 语句的时间复杂度为: (1) Ο(n2) (2) Ο(n2) (3) Ο(n2) (4) Ο(n-1) (5) Ο(n3) 1.5 参考程序: main() { int X,Y,Z; scanf(“%d, %d, %d”,&X,&Y,Z); if (X>=Y) if(X>=Z) if (Y>=Z) { printf(“%d, %d, %d”,X,Y,Z);} else { printf(“%d, %d, %d”,X,Z,Y);}

数据结构C语言版第2版课后习题答案

数据结构(C语言版)(第2版) 课后习题答案 李冬梅

目录 第1章绪论............................................. 错误!未定义书签。第2章线性表........................................... 错误!未定义书签。第3章栈和队列......................................... 错误!未定义书签。第4章串、数组和广义表................................. 错误!未定义书签。第5章树和二叉树....................................... 错误!未定义书签。第6章图................................................ 错误!未定义书签。第7章查找............................................. 错误!未定义书签。第8章排序............................................. 错误!未定义书签。

第1章绪论 1.简述下列概念:数据、数据元素、数据项、数据对象、数据结构、逻辑结构、存储结构、抽象数据类型。 答案: 数据:是客观事物的符号表示,指所有能输入到计算机中并被计算机程序处理的符号的总称。如数学计算中用到的整数和实数,文本编辑所用到的字符串,多媒体程序处理的图形、图像、声音、动画等通过特殊编码定义后的数据。 数据元素:是数据的基本单位,在计算机中通常作为一个整体进行考虑和处理。在有些情况下,数据元素也称为元素、结点、记录等。数据元素用于完整地描述一个对象,如一个学生记录,树中棋盘的一个格局(状态)、图中的一个顶点等。 数据项:是组成数据元素的、有独立含义的、不可分割的最小单位。例如,学生基本信息表中的学号、姓名、性别等都是数据项。 数据对象:是性质相同的数据元素的集合,是数据的一个子集。例如:整数数据对象是集合N={0,±1,±2,…},字母字符数据对象是集合C={‘A’,‘B’,…,‘Z’,‘a’,‘b’,…,‘z’},学生基本信息表也可是一个数据对象。 数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。换句话说,数据结构是带“结构”的数据元素的集合,“结构”就是指数据元素之间存在的关系。 逻辑结构:从逻辑关系上描述数据,它与数据的存储无关,是独立于计算机的。因此,数据的逻辑结构可以看作是从具体问题抽象出来的数学模型。 存储结构:数据对象在计算机中的存储表示,也称为物理结构。 抽象数据类型:由用户定义的,表示应用问题的数学模型,以及定义在这个模型上的一组操作的总称。具体包括三部分:数据对象、数据对象上关系的集合和对数据对象的基本操作的集合。 2.试举一个数据结构的例子,叙述其逻辑结构和存储结构两方面的含义和相互关系。 答案: 例如有一张学生基本信息表,包括学生的学号、姓名、性别、籍贯、专业等。每个学生基本信息记录对应一个数据元素,学生记录按顺序号排列,形成了学生基本信息记录的线性序列。对于整个表来说,只有一个开始结点(它的前面无记录)和一个终端结点(它的后面无记录),其他的结点则各有一个也只有一个直接前趋和直接后继。学生记录之间的这种关系就确定了学生表的逻辑结构,即线性结构。 这些学生记录在计算机中的存储表示就是存储结构。如果用连续的存储单元(如用数组表示)来存放这些记录,则称为顺序存储结构;如果存储单元不连续,而是随机存放各个记录,然后用指针进行链接,则称为链式存储结构。 即相同的逻辑结构,可以对应不同的存储结构。 3.简述逻辑结构的四种基本关系并画出它们的关系图。

数据结构C语言版第2版课后习题答案

数据结构C语言版第2版课后习题答案 本页仅作为文档封面,使用时可以删除 This document is for reference only-rar21year.March

数据结构(C语言版)(第2版) 课后习题答案 李冬梅

目录 第1章绪论 ............................................................................ 错误!未定义书签。第2章线性表......................................................................... 错误!未定义书签。第3章栈和队列 ..................................................................... 错误!未定义书签。第4章串、数组和广义表 ........................................................ 错误!未定义书签。第5章树和二叉树 .................................................................. 错误!未定义书签。第6章图 ................................................................................ 错误!未定义书签。第7章查找 ............................................................................ 错误!未定义书签。第8章排序 ............................................................................ 错误!未定义书签。 I

大数据结构考研真题及其问题详解

一、选择题 1. 算法的计算量的大小称为计算的( B )。【邮电大学2000 二、3 (20/8分)】 A.效率 B. 复杂性 C. 现实性 D. 难度2. 算法的时间复杂度取决于(C )【中科院计算所 1998 二、1 (2分)】 A.问题的规模 B. 待处理数据的初态 C. A和B 3.计算机算法指的是(C),它必须具备(B)这三个特性。 (1) A.计算方法 B. 排序方法 C. 解决问题的步骤序列 D. 调度方法 (2) A.可执行性、可移植性、可扩充性 B. 可执行性、确定性、有穷性 C. 确定性、有穷性、稳定性 D. 易读性、稳定性、安全性 【理工大学 1999 一、1(2分)【交通科技大学 1996 一、1( 4分)】 4.一个算法应该是( B )。【大学 1998 二、1(2分)】 A.程序 B.问题求解步骤的描述 C.要满足五个基本特性D.A和C. 5. 下面关于算法说法错误的是( D )【理工大学 2000 一、1(1.5分)】 A.算法最终必须由计算机程序实现 B.为解决某问题的算法同为该问题编写的程序含义是相同的 C. 算法的可行性是指指令不能有二义性 D. 以上几个都是错误的 6. 下面说法错误的是( C )【理工大学 2000 一、2 (1.5分)】 (1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法 (3)所谓时间复杂度是指最坏情况下,估算算法执行时间的一个上界(4)同一个算法,实现语言的级别越高,执行效率就越低4 A.(1) B.(1),(2) C.(1),(4) D.(3) 7.从逻辑上可以把数据结构分为( C )两大类。【交通科技大学 1996 一、4(2分)】 A.动态结构、静态结构 B.顺序结构、链式结构 C.线性结构、非线性结构 D.初等结构、构造型结构 8.以下与数据的存储结构无关的术语是( D )。【北方交通大学 2000 二、1(2分)】 A.循环队列 B. 链表 C. 哈希表 D.栈

数据结构(c语言版)第三版清华大学出版社习题参考答案

不管怎样,生活还是要继续向前走去。有的时候伤害和失败不见得是一件坏事,它会让你变得更好,孤单和失落亦是如此。每件事到最后一定会变成一件好事,只要你能够走到最后。附录习题参考答案 习题1参考答案 1.1.选择题 (1). A. (2). A. (3). A. (4). B. C. (5). A. (6). A. (7). C. (8). A. (9). B. (10.) A. 1.2.填空题 (1). 数据关系 (2). 逻辑结构物理结构 (3). 线性数据结构树型结构图结构 (4). 顺序存储链式存储索引存储散列表(Hash)存储 (5). 变量的取值范围操作的类别 (6). 数据元素间的逻辑关系数据元素存储方式或者数据元素的物理关系 (7). 关系网状结构树结构 (8). 空间复杂度和时间复杂度 (9). 空间时间 (10). Ο(n) 1.3 名词解释如下: 数据:数据是信息的载体 是计算机程序加工和处理的对象 包括数值数据和非数值数据 数据项:数据项指不可分割的、具有独立意义的最小数据单位 数据项有时也称为字段或域 数据元素:数据元素是数据的基本单位 在计算机程序中通常作为一个整体进行考虑和处理 一个数据元素可由若干个数据项组成 数据逻辑结构:数据的逻辑结构就是指数据元素间的关系 数据存储结构:数据的物理结构表示数据元素的存储方式或者数据元素的物理关系 数据类型:是指变量的取值范围和所能够进行的操作的总和 算法:是对特定问题求解步骤的一种描述 是指令的有限序列 1.4 语句的时间复杂度为: (1) Ο(n2) (2) Ο(n2) (3) Ο(n2) (4) Ο(n-1)

数据结构(c语言版)课后习题答案完整版

第1章绪论 5.选择题:CCBDCA 6.试分析下面各程序段的时间复杂度。 (1)O(1) (2)O(m*n) (3)O(n2) (4)O(log3n) (5)因为x++共执行了n-1+n-2+……+1= n(n-1)/2,所以执行时间为O(n2) (6)O(n) 第2章线性表 1.选择题 babadbcabdcddac 2.算法设计题 (6)设计一个算法,通过一趟遍历在单链表中确定值最大的结点。 ElemType Max (LinkList L ){ if(L->next==NULL) return NULL; pmax=L->next; //假定第一个结点中数据具有最大值 p=L->next->next; while(p != NULL ){//如果下一个结点存在 if(p->data > pmax->data) pmax=p; p=p->next; } return pmax->data; (7)设计一个算法,通过遍历一趟,将链表中所有结点的链接方向逆转,仍利用原表的存储空间。 void inverse(LinkList &L) { // 逆置带头结点的单链表 L p=L->next; L->next=NULL; while ( p) { q=p->next; // q指向*p的后继 p->next=L->next; L->next=p; // *p插入在头结点之后 p = q; }

} (10)已知长度为n的线性表A采用顺序存储结构,请写一时间复杂度为O(n)、空间复杂度为O(1)的算法,该算法删除线性表中所有值为item的数据元素。 [题目分析] 在顺序存储的线性表上删除元素,通常要涉及到一系列元素的移动(删第i个元素,第i+1至第n个元素要依次前移)。本题要求删除线性表中所有值为item的数据元素,并未要求元素间的相对位置不变。因此可以考虑设头尾两个指针(i=1,j=n),从两端向中间移动,凡遇到值item的数据元素时,直接将右端元素左移至值为item的数据元素位置。 void Delete(ElemType A[ ],int n) ∥A是有n个元素的一维数组,本算法删除A中所有值为item的元素。 {i=1;j=n;∥设置数组低、高端指针(下标)。 while(i

哈尔滨工程大学-考研数据结构真题-12_

哈尔滨工程大学-考研数据结构真题-12_ 哈尔滨工程大学试卷考试科目: 数据结构A 卷题号一二三四五总分分数评卷人一、单项选择题(每空1分,共15分)1、以下数据结构中,从逻辑结构看,()和其他数据结构不同。 A.树B.字符串C.队列D.栈2、对于顺序存储的线性表,访问结点和增加、删除结点的时间复杂度为()。 A.O(n) O(n) B.O(n) O(1) C.O(1) O(n) D.O(1) O(1) 3、有六个元素A,B,C,D,E,F的顺序进栈,()不是合法的出栈序列。 A.DEFCBA B.EDCBFA C.EFDBCA D.EDCFBA 4、字符串“ABCDEF”的子串有()个。 A.19 B.20 C.21 D.22 5、顺序表中插入一个元素,需要平均移动的元素个数为()。 A.(n-1)/2 B.n/2 C.(n+1)/2 D.n-1 6、非空的单循环链表head 的尾结点(由P所指向)满足()。 A.p-next ==NULL B.p==NULL C.p-next==head D.p==head 7、若A是中序线索二叉树中的一个结点,且A不为根,则A的前驱为( )。 A.A的右子树中最右的结点B.A的左子树中最左的结点C.A 的右子树中最左的结点D.A的左子树中最右的结点8、如某二叉树有30个叶子结点,有20个结点仅有一个孩子,则该二叉树中有两个孩子的结点数为()。 A.29 B.30 C.31 D.19 9、二维数组A的每个元素是由8个字符组成的串,其行下标i=0,1,…,9,列下标j=1,2,…,10。若A按行序为主序存储,元素A的起始地址与当A按列序为主序存储时的元素()的起始地址相同(设每个字符占一个字节)。 A.A B.A C.A D.A 10、图的深度优先遍历算法类似于二叉树的()。

严蔚敏数据结构题集(C语言版)完整

严蔚敏 数据结构C 语言版答案详解 第1章 绪论 1.1 简述下列术语:数据,数据元素、数据对象、数据结构、存储结构、数据类型和抽象数据类型。 解:数据是对客观事物的符号表示。在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。 数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。 数据对象是性质相同的数据元素的集合,是数据的一个子集。 数据结构是相互之间存在一种或多种特定关系的数据元素的集合。 存储结构是数据结构在计算机中的表示。 数据类型是一个值的集合和定义在这个值集上的一组操作的总称。 抽象数据类型是指一个数学模型以及定义在该模型上的一组操作。是对一般数据类型的扩展。 1.2 试描述数据结构和抽象数据类型的概念与程序设计语言中数据类型概念的区别。 解:抽象数据类型包含一般数据类型的概念,但含义比一般数据类型更广、更抽象。一般数据类型由具体语言系统内部定义,直接提供给编程者定义用户数据,因此称它们为预定义数据类型。抽象数据类型通常由编程者定义,包括定义它所使用的数据和在这些数据上所进行的操作。在定义抽象数据类型中的数据部分和操作部分时,要求只定义到数据的逻辑结构和操作说明,不考虑数据的存储结构和操作的具体实现,这样抽象层次更高,更能为其他用户提供良好的使用接口。 1.3 设有数据结构(D,R),其中 {}4,3,2,1d d d d D =,{}r R =,()()(){}4,3,3,2,2,1d d d d d d r = 试按图论中图的画法惯例画出其逻辑结构图。 解: 1.4 试仿照三元组的抽象数据类型分别写出抽象数据类型复数和有理数的定义(有理数是其分子、分母均为自然数且分母不为零的分数)。 解: ADT Complex{ 数据对象:D={r,i|r,i 为实数} 数据关系:R={} 基本操作: InitComplex(&C,re,im) 操作结果:构造一个复数C ,其实部和虚部分别为re 和im DestroyCmoplex(&C) 操作结果:销毁复数C Get(C,k,&e) 操作结果:用e 返回复数C 的第k 元的值 Put(&C,k,e) 操作结果:改变复数C 的第k 元的值为e

2017年北京邮电大学数据结构考研题

2017年北京邮电大学数据结构考研题 一、选择 1、在数据结构中,与计算机无关的数据称为___________;单链表是一种______存储结构 的线性表,适合于______查找。 2、二叉树最常用的__________是二叉链表。 3、一棵二叉树的前序遍历是FCABED,中序遍历是ACBFED,则后序遍历是_________。 4、设树的度为5,其中度为1~5的结点数分别为6、 5、4、3、2个,则该树共有_______ 个叶子。 5、11个顶点的无向图,最多能有_______条边。 6、某索引顺序表共有元素275个,平均分成5块。若先对索引表采用顺序查找,再对块 中元素进行顺序查找,则等概率情况下,分块查找成功的平均查找长度是________。 7、交换排序适用于________存储结构的表。 8、由A~F六个字母构成的堆序列是______ (1) 9 (2) 28 (3) 31 (4) 36 (5) 50 (6) 51 (7) 55 (8) 110 (9) 138 (10) 逻辑结构(11) 存储结构(12) 顺序 (13) 链式(14) DBCAEF (15) ABCDEF (16) ABCEDF (17) BACDEF 二、判断 1、抽象数据类型与计算机内部表示和实现无关; 2、线性表的插入和删除总是伴随着大量数据的移动; 3、队列在程序调用是必不可少,因此递归离不开队列; 4、字符串’aababaaaba’的改进函数nextval数组值是0020200320; 5、二叉树中有双子女的父结点,在中序遍历中后继一定是其中一个子女结点; 6、不用递归就不能实现二叉树的前序遍历; 7、若有向图有n个顶点,则其强连通分量最多有n个; 8、平衡二叉树一定是一棵完全二叉树; 9、若某内部排序算法不稳定,则该算法没有使用价值; 10、倒排文件的目的是为了多关键字查找; 三、已知一组关键字为(112,213,305,46,57,86,72,162,95),用散列表函数H(k)=k%10将它们散列到表HT(0..9)中,用线性探测法H(k),H(k)+1,……,H(k)-1解决冲突,画出最后的散列表,并计算产生冲突的次数。 四、简述Prim和Kruskal算法求最小生成树的算法思想,分析他们的时间复杂度及分别适用于什么样的网 五、算法 1、阅读下面的程序,根据输入写出输出结果 #include “iostream.h” viod swap(int &x, int &y) {

数据结构C语言版章节练习题

数据结构章节练习题 第一章绪论 一、单选题 1.一个数组元素a[i]与________的表示等价。 A、*(a+i) B、a+i C、*a+i D、&a+i 2.下面程序段的时间复杂度为____________。 for(int i=0; i

数据结构C语言第三版,邓文华编 习题3答案

习题3参考答案 3.1.选择题 (1). D (2). C (3). D (4). C (5). B (6). C (7). C (8). C (9). B (10).B (11). D (12). B (13). D (14). C (15). C (16). C (17). D (18). C (19). C (20). B 3.2.填空题 (1)FILO, FIFO (2)-1, 3 4 X * + 2 Y * 3 / - (3)stack.top, stack.s[stack.top]=x (4)p>llink->rlink=p->rlink, p->rlink->llink=p->rlink (5)(R-F+M)%M (6)top1+1==top2 (7)F==R (8)front==rear (9)front==(rear+1)%n (10) N-1 3.3 答:一般线性表使用数组来表示的 线性表一般有插入、删除、读取等对于任意元素的操作 而栈只是一种特殊的线性表 栈只能在线性表的一端插入(称为入栈,push)或者读取栈顶元素或者称为“弹出、出栈”(pop)。 3.4 答:相同点:栈和队列都是特殊的线性表,只在端点处进行插入,删除操作。 不同点:栈只在一端(栈顶)进行插入,删除操作;队列在一端(top)删除,一端(rear)插入。 3.5 答:可能序列有14种:ABCD; ACBD; ACDB; ABDC; ADCB; BACD; BADC; BCAD; BCDA; BDCA; CBAD; CBDA; CDBA; DCBA。 3.6 答:不能得到4,3,5,6,1,2,最先出栈的是4,则按321的方式出,不可能得到1在2前的序列,可以得到1,3,5,4,2,6,按如下方式进行push(1), pop(), push(2), push(3), pop(), push(4), push(5), pop(), pop(), pop(), push(6), pop()。 3.7 答:stack 3.8 非递归: int vonvert (int no,int a[]) //将十进制数转换为2进制存放在a[],并返回位数 { int r; SeStack s,*p; P=&s; Init_stack(p); while(no) { push(p,no%2);

历年《数据结构》考研真题及解答

《数据结构》考研真题及解答

目录 2009 年试题 (1) 填空题 (1) 解答题 (2) 2010 年试题 (2) 填空题 (2) 解答题 (4) 2011 年试题 (4) 填空题 (4) 解答题 (5) 2012 年试题 (6) 填空题 (6) 解答题 (7) 2013 年试题 (8) 填空题 (8) 解答题 (9) 2014 年试题 (10) 填空题 (10) 解答题 (11) 2015 年试题 (12) 填空题 (12) 解答题 (14)

2009 年试题 填空题 1.为解决计算机与打印机之间速度不匹配的问题,通常设置一个打印数据缓冲区,主机将要 输出的数据依次写入该缓冲区,而打印机则依次从该缓冲区中取出数据。该缓冲区的逻辑结构应该是 A.栈 B.队列 C.树 D.图 2.设栈 S 和队列 Q 的初始状态均为空,元素 abcdefg 依次进入栈 S。若每个元素出栈后立即 进入队列 Q,且7 个元素出队的顺序是 bdcfeag,则栈 S 的容量至少是 A.1 B.2 C.3 D.4 3.给定二叉树图所示。设 N 代表二叉树的根,L代表根结点的左子树,R代表根结点的右子树。 若遍历后的结点序列为 3,1,7,5,6,2,4,则其遍历方式是 A.LRN B.NRL C.RLN D.RNL 4.下列二叉排序树中,满足平衡二叉树定义的是 5.已知一棵完全二叉树的第 6 层(设根为第 1 层)有8 个叶结点,则完全二叉树的结点个数 最多是 A.39 B.52 C.111 D.119 6.将森林转换为对应的二叉树,若在二叉树中,结点u 是结点v 的父结点的父结点,则在原 来的森林中,u 和v 可能具有的关系是I.父子关系II.兄弟关系III.u 的父结点与v 的父结点是兄弟关系 A.只有II B.I 和II C.I 和III D.I、II 和III 7.下列关于无向连通图特性的叙述中,正确的是 I.所有顶点的度之和为偶数II.边数大于顶点个数减1 III.至少有一个顶点的度为1

2019年广东暨南大学数据结构考研真题

2019年广东暨南大学数据结构考研真题 一、单项选择题(每题2分,共30分) 1.在任意一棵二叉树的先序序列和后序序列中,各叶子之间的相对次序关系()。 A.不一定相同 B.互为逆序 C.都不相同 D.都相同 2.深度为4的二叉树至多有结点数为()。 A.18 B.14 C.15 D.16 3.在一个具有n个顶点的有向图中,若所有顶点的入度数之和为m,则所有顶点的度数之和为()。 A.m B.m-1 C.m+1 D.2m 4.快速排序在()情况下最不利于发挥其长处。 A.被排序的数据量太大. B.被排序数据中含有多个相同的关键字 C.被排序的数据完全无序 D.被排序的数据已基本有序 5.一组记录的关键字为(45,80,55,40,42,85),则利用堆排序的方法建立的初始堆为()。 A.(80,45,55,40,42,85) B.(85,80,55,40,42,45) C.(85,80,55,45,42,40) D.(85,55,80,42,45,40) 6.对有18个元素的有序表(下标为1~18)作折半查找,则查找A[3]的比较序列的下标为()。 A.1,2,3 B.9,5,2,3 C.9,5,3 D.9,4,2,3 7.具有n个顶点的完全有向图的边数为()。 A.n(n-1)/2 B.n(n-1) C.n2 D.n2-1 8.利用逐点插入法建立序列(50,72,43,85,75,20,35,45,65,30)对应的二叉排序树以后,查找元素35要进行()。 A.4次 B.5次 C.3次 D.2次 9.判定一个有向图是否存在回路除了可以利用拓扑排序方法外,还可以用()。

数据结构(C语言版)严蔚敏课后习题答案

数据结构(C语言版)严蔚敏 第1章绪论 1.1 简述下列术语:数据,数据元素、数据对象、数据结构、存储结构、数据类型和抽象数据类型。 解:数据是对客观事物的符号表示。在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。 数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。 数据对象是性质相同的数据元素的集合,是数据的一个子集。 数据结构是相互之间存在一种或多种特定关系的数据元素的集合。 存储结构是数据结构在计算机中的表示。 数据类型是一个值的集合和定义在这个值集上的一组操作的总称。 抽象数据类型是指一个数学模型以及定义在该模型上的一组操作。是对一般数据类型的扩展。 1.2 试描述数据结构和抽象数据类型的概念与程序设计语言中数据类型概念的区别。 解:抽象数据类型包含一般数据类型的概念,但含义比一般数据类型更广、更抽象。一般数据类型由具体语言系统内部定义,直接提

供给编程者定义用户数据,因此称它们为预定义数据类型。抽象数据类型通常由编程者定义,包括定义它所使用的数据和在这些数据上所进行的操作。在定义抽象数据类型中的数据部分和操作部分时,要求只定义到数据的逻辑结构和操作说明,不考虑数据的存储结构和操作的具体实现,这样抽象层次更高,更能为其他用户提供良好的使用接口。 1.3 设有数据结构(D,R),其中 {}4,3,2,1d d d d D =,{}r R =,()()(){}4,3,3,2,2,1d d d d d d r = 试按图论中图的画法惯例画出其逻辑结构图。 解: 1.4 试仿照三元组的抽象数据类型分别写出抽象数据类型复数和有理数的定义(有理数是其分子、分母均为自然数且分母不为零的分数)。 解: ADT Complex{ 数据对象:D={r,i|r,i 为实数} 数据关系:R={} 基本操作: InitComplex(&C,re,im) 操作结果:构造一个复数C ,其实部和虚部分别为re 和im

数据结构(c语言版)第三版习题解答

数据结构 (C语言版)(第3版) 习题解析 揭安全李云清杨庆红编著 江西师范大学计算机信息工程学院 联系方式:jieanquan@https://www.doczj.com/doc/727377518.html, 2012年12月

第1章绪论 1.1什么是数据结构? 【答】:数据结构是指按一定的逻辑结构组成的一批数据,使用某种存储结构将这批数据存储于计算机中,并在这些数据上定义了一个运算集合。 1.2 数据结构涉及哪几个方面? 【答】:数据结构涉及三个方面的内容,即数据的逻辑结构、数据的存储结构和数据的运算集合。 1.3 两个数据结构的逻辑结构和存储结构都相同,但是它们的运算集合中有一个运算的定义不 一样,它们是否可以认作是同一个数据结构?为什么? 【答】:不能,运算集合是数据结构的重要组成部分,不同的运算集合所确定的数据结构是不一样的,例如,栈与队列它们的逻辑结构与存储结构可以相同,但由于它们的运算集合不一样,所以它们是两种不同的数据结构。 1.4 线性结构的特点是什么?非线性结构的特点是什么? 【答】:线性结构元素之间的关系是一对一的,在线性结构中只有一个开始结点和一个终端结点,其他的每一个结点有且仅有一个前驱和一个后继结点。而非线性结构则没有这个特点,元素之间的关系可以是一对多的或多对多的。 1.5 数据结构的存储方式有哪几种? 【答】:数据结构的存储方式有顺序存储、链式存储、散列存储和索引存储等四种方式。 1.6 算法有哪些特点?它和程序的主要区别是什么? 【答】:算法具有(1)有穷性(2)确定性(3)0个或多个输入(4)1个或多个输出(5)可 行性等特征。程序是算法的一种描述方式,通过程序可以在计算机上实现算法。 1.7 抽象数据类型的是什么?它有什么特点? 【答】:抽象数据类型是数据类型的进一步抽象,是大家熟知的基本数据类型的延伸和发展。抽象数据类型是与表示无关的数据类型,是一个数据模型及定义在该模型上的一组运算。对一个抽象数据类型进行定义时,必须给出它的名字及各运算的运算符名,即函数名,并且规定这些函数的参数性质。一旦定义了一个抽象数据类型及具体实现,程序设计中就可以像使用基本数据类型那样,十分方便地使用抽象数据类型。抽象数据类型的设计者根据这些描述给出操作的具体实现,抽象数据类型的使用者依据这些描述使用抽象数据类型。 1.8 算法的时间复杂度指的是什么?如何表示? 【答】:算法执行时间的度量不是采用算法执行的绝对时间来计算的,因为一个算法在不同的机器上执行所花的时间不一样,在不同时刻也会由于计算机资源占用情况的不同,使得算法在同一台计算机上执行的时间也不一样,另外,算法执行的时间还与输入数据的状态有关,所以对于算法的时间复杂性,采用算法执行过程中其基本操作的执行次数,称为计算量来度量。算法中基本操作的执行次数一般是与问题规模有关的,对于结点个数为n的数据处理问题,用 T(n)表示算法基本操作的执行次数。为了评价算法的执行效率,通常采用大写O符号表示算法 的时间复杂度,大写O符号给出了函数f的一个上限。其它义如下: 定义:f (n)=O (g (n)) 当且仅当存在正的常数c和n0,使得对于所有的n≥n0,有f (n) ≤c g(n)。

北京理工大学数据结构考研例题解析9

本资料由理硕教育整理,理硕教育是全国唯一专注于北理工考研辅导的学校,相对于其它机构理硕教育有得天独厚的优势。丰富的理工内部资料资源与人力资源确保每个学员都受益匪浅,确保理硕教育的学员初试通过率89%以上,复试通过率接近100%,理硕教育现开设初试专业课VIP一对一,初试专业课网络小班,假期集训营,复试VIP一对一辅导,复试网络小班,考前专业课网络小班,满足学员不同的需求。因为专一所以专业,理硕教育助您圆北理之梦。详情请查阅理硕教育官网 第 9 章索引技术 课后习题讲解 1. 填空题 ⑴在索引表中,每个索引项至少包含()和()等信息 【解答】关键码,关键码对应的记录在存储器中的位置 ⑵在线性索引中,()称为稠密索引 【解答】若文件中的每个记录对应一个索引项 ⑶分块有序是指将文件划分为若干块,()无序,()有序。 【解答】块内,块间 ⑷在分块查找方法中,首先查找(),然后查找相应的()。 【解答】索引表,块 ⑸在10阶B—树中根结点所包含的关键码个数最多为(),最少为()。 【解答】9,1 【分析】m阶的B-树中每个结点至多有m棵子树,若根结点不是终端结点,则至少有两棵子树,每个结点中关键码的个数为子树的个数减1。 ⑹一棵5阶B—树中,除根结点外,每个结点的子树树目最少为(),最多为()。【解答】3,5 【分析】m阶的B-树中每个结点至多有m棵子树,除根结点之外的所有非终端结点至少有?m/2? 棵子树。 ⑺对于包含n个关键码的m阶B—树,其最小高度是(),最大高度是()。 【解答】[logm(n+1)], [logm/2(n+1)/2] ⑻在一棵B—树中删除关键码,若最终引起树根结点的合并,则新树比原树的高度()。【解答】减少1层

数据结构c语言版习题集答案

数据结构c语言版习题集答案 【篇一:数据结构(c语言版)第三版__清华大学出版社_ 习题参考答案】 习题1参考答案 1.1.选择题 (1). a. (2). a. (3). a. (4). b.,c. (5). a. (6). a. (7). c. (8). a. (9). b. (10.) a. 1.2.填空题 (1). 数据关系 (2). 逻辑结构物理结构 (3). 线性数据结构树型结构图结构 (4). 顺序存储链式存储索引存储散列表(hash)存储 (5). 变量的取值范围操作的类别 (6). 数据元素间的逻辑关系数据元素存储方式或者数据元素的物理关系 (7). 关系网状结构树结构 (8). 空间复杂度和时间复杂度 (9). 空间时间 1.3 名词解释如下: 数据:数据是信息的载体,是计算机程序加工和处理的对象,包括数值数据和非数值数据。数据项:数据项指不可分割的、具有独立意义的最小数据单位,数据项有时也称为字段或域。数据元素:数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理,一个数据元素可由若干个数据项组成。 数据逻辑结构:数据的逻辑结构就是指数据元素间的关系。 数据存储结构:数据的物理结构表示数据元素的存储方式或者数据元素的物理关系。数据类型:是指变量的取值范围和所能够进行的操作的总和。 算法:是对特定问题求解步骤的一种描述,是指令的有限序列。 1.4 语句的时间复杂度为: 1.5 参考程序: main() { int x,y,z;

scanf(“%d, %d, %d”,x,y,z); if (x=y) if(x=z) if (y=z) { printf(“%d, %d, %d”,x,y,z);} else { printf(“%d, %d, %d”,x,z,y);} else { printf(“%d, %d, %d”,z,x,y);} else if(z=x) if (y=z) { printf(“%d, %d, %d”,y,z,x);} else { printf(“%d, %d, %d”,z,y,x);} else { printf(“%d, %d, %d”,y,x,z);} } 1.6 参考程序: main() { int i,n; float x,a[],p; printf(“\nn=”);scanf(“%f”,n); printf(“\nx=”);scanf(“%f”,x); for(i=0;i=n;i++) scanf(“%f ”,a[i]); p=a[0]; for(i=1;i=n;i++) { p=p+a[i]*x; x=x*x;} printf(“%f”,p)’ } 习题2参考答案 2.1选择题 (1). c. (2). b. (3). b. (4). b. 5. d. 6. b. 7. b.8. a.9. a.10. d. 2.2.填空题 (1). 有限序列 (2). 顺序存储和链式存储

相关主题
文本预览
相关文档 最新文档