完整版计算机软件练习题汇总,推荐文档_第1页
完整版计算机软件练习题汇总,推荐文档_第2页
完整版计算机软件练习题汇总,推荐文档_第3页
完整版计算机软件练习题汇总,推荐文档_第4页
完整版计算机软件练习题汇总,推荐文档_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、二、单项选择题1.在数据流图中,.圆圈代表.A、源点8终点加工2.在数据流图中,使用双线表示.A、源点和终点8数据存储G加工3.软件设计阶段一般分为两步:.A、逻辑设计与功能设计B、总体设计与详细设计G概念设计与物理设计以模型设计与程序设计4.软件生存周期可划分为三个时期:方案期、开发期和A、调研期8可行性分析期运行期5.软件工程的出现主要是由于.A、程序设计方法学的影响B、其它工程科学的影响G软件危机的出现计算机的开展D、模块D、模块D、测试期属于方案期D、需求分析属于运行期D、问题定义G找出编程中的错误并设法改正D 、检查软件的结构设计是否合理软件工程与数据库局部:一、填空题1. 软件是计

2、算机程序、方法和规那么相关的 以及在计算机上运行它时所必须的数据.2. 软件是计算机程序、方法和规那么相关的文档以及在计算机上运行它时所必须的 3. 软件是、方法和规那么相关的文档以及在计算机上运行它时所必须的数据.4. 软件工程是从技术和 两方面研究如何更好地开发和维护计算机软件的一门学 科.5. 结构化方法由 、构成,是一种面向数据流的开发方法.6. 需求分析阶段产生的最重要的文档之一是 .7. 数据流图中的箭头表示 .6. 软件生存周期可划分为方案期、开发期及运行期三个阶段,以下工作 阶段.A、程序设计B问题定义及可行性研究G软件测试7. 软件生存周期可划分为方案期、开发期及运行期三个阶

3、段,以下工作 阶段.A、维护B可行性分析G测试8. 在需求分析阶段,系统分析人员采用数据流图和来表达自己对问题域用户需求的理解.A、程序流程图B、判定表或判定树G数据字典DDD、加工9. 在基于结构化分析与设计的软件开发方法中,系统分析人员在需求分析阶段应采用 和数据字典来表达自己对问题域用户需求的理解.A、程序流程图B数据流图DFDG数据流D、加工10. 软件测试的目的是.A、要证实程序无错误B、发现软件中存在的错误11. 软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试 .A、结构合理性8软件外部功能G程序正确性以程序内部逻辑三、判断题1. ()软件就是程序.2. (

4、)在设计软件测试用例时不仅需选择对被测软件的预期功能是合理的输入数据, 而且还应该选择不合理的输入数据.3. ()软件测试中设计测试用例时只需选择对被测软件的预期功能是合理的输入数据, 而不选择不合理的输入数据.4. ()软件测试分为模块测试、组装测试和确认测试三个阶段.5. ()黑盒测试不仅需要考虑程序的功能,还需要知道程序的内部细节、结构和实现 方式.6. ()黑盒测试只需要考虑程序的功能,不需要知道程序的内部细节、结构和实现方 式.7. ()白盒测试中的测试用例的设计需要考虑覆盖程序内部的逻辑结构.8. ()白盒测试中的测试用例设计只需要考虑覆盖程序内部的逻辑结构,不需要考虑 程序的预期

5、功能.9. ()模块测试能发现详细设计阶段和编(码)程阶段的错误.10. ()组装测试能发现与模块接口有关的问题.11. ()确认测试主要采用白盒测试方法.12. ()软件总体设计的根本任务就是确定每个程序模块的内部特征,即确定模块内部 的执行过程.13. ()软件测试与软件调试的目的完全相同.14. ()信息是人们用来对客观世界直接进行描述、可在人们之间进行传递的知识.15. ()目前,在数据库技术中广泛应用的数据模型是层次模型.16. ()软件详细设计的根本任务就是确定每个模块的内部特征,即确定模块内部的执 行过程.17. ()软件测试的目的是发现程序中的错误,然后找出错误的原因并加以纠正

6、.四、简做题1. 软件测试包括哪些步骤说明这些步骤的测试对象是什么2. 数据库系统的定义是什么它由哪几局部组成线性数据结构局部:一、填空题1. 数据结构包括数据的逻辑结构、 和数据的运算三个方面.2. 数据结构包括、数据的存储结构和数据的运算三个方面.3. 在算法“正确的前提下,评价算法主要有两个指标是:时间复杂度和 4. 在算法“正确的前提下,衡量算法效率的主要指标是: 及空间复杂度.5. 线性数据结构的逻辑特征是有且仅有一个 和一个终端结点,且所有结点都最 多只有一个直接前趋和一个 .6. 线性数据结构的逻辑特征是有且仅有一个开始结点和一个终端结点,且所有结点都最多只有一个 和一个直接后继

7、.7. 数据的存储结构包含有 、和 等四种根本的映像方法.8. 数据存储结构的四种根本形式是: 存储结构、存储结构、索引存储结构以及散列存储结构.9. 假设频繁地对线性表进行插入与删除操作,该线性表应采用 存储结构.10. 线性链表中数据元素的组成:一是数据元素的值,二是直接后继元素的 , 这两局部信息组成数据元素的存储映像,即结点.11. 带头结点的单向链表L为空的判定条件是 .12. 在一个单链表中p所指结点之后插入s所指结点时,应执行s->next= 和p->next= 的操作.13. 要在一个单链表中p所指结点之后插入一个子链表,子链表第一个结点的地址为s,子链表最后一个结

8、点的地址为t,那么应执行操作:和.14. 单链表的结点的数据类型是:typedef struct nodeint data; /* 数据局部*/struct node *next ; /*指向下一个结点的指针 */ LinkList;LinkList *p, *q;如果要求将由指针变量 q所指向的表外结点插入到单链表中由p所指向的结点之后,那么应执行的语句是: 2.要将p所指向的结点的数据局部修改为 25,应执行的语句是: .15. 插入和删除只允许在表的同一端进行的线性表称为 ,它具有 的特性.16. 将插入操作限定在表的一端而删除操作限定在表的另一端的线性表称为 ,它具有 的特性.17.

9、对于一个以顺序存储实现的循环队列Q0.10,队头、队尾的位置指示器分别是front,rear,初始时都被设置为-1 ,贝U在该循环队列中实现出队操作时,判空的条件是: ;入队操作时.判满的条件是: .18. 二维数组A1020采用列序为主方式存储,每个元素占10个存储单元,且 A00的存储地址是 2000,那么A612的地址是.19. 二维数组A2010采用行序为主方式存储,每个元素占2个存储单元,并且A105的存储地址是 1000,那么A189的存储地址是.20. 线性表的三种根本查找方法是:顺序查找、 查找和 查找.二、单项选择题1. 线性表中称为线性表的长度.A、元素的长度B、数据项的数

10、目G数据的长度以元素的个数2. 不属于线性表根本运算的是:.A、删除运算 B指针运算C、取结点运算D>插入运算3. 在以下关于线性表的表达中,错误的选项是: .A、采用顺序存储的线性表,必须占用一片连续的存储单元8采用顺序存储的线性表,便于进行插入和删除操作G采用链式存储的线性表,不必占用一片连续的存储单元以采用链式存储的线性表,便于进行插入和删除操作4. 当线性表选择链表作为存储结构时,不具有的特点是:.A、可随机访问任一元素B 、插入、删除时不需要移动大量元素G不必事先估计存储空间D、所需空间与线性表的长度成正比5. 算法具有“确定性等 5个特性,下面对另外 4个特性的描述中错误的选

11、项是.A、可行性B有零个或多个输入 G有穷性Dk有零个或多个输出6. 衡量一个算法的质量除了正确性之外,最重要的是要考查.A、可行性B有穷性G时间复杂度和空间复杂度D、输入和输出7. 在长度为n的线性表中,在第i个元素之前插入一个新的元素x,需要移动个元素.A nB n-i+1G n-i以i+18.假设p是指向线性表中第i个数据兀素结点的指针,那么p->next是指向第i+1个数据元素结点的指针,假设 p->data=a i,贝U p->next->data=ai+1,那么p->next->next 指向的是第个结点.A iB i+1G i+2以i+39.以

12、下哪一个不是队列的根本运算A、从队尾插入一个新元素B从队列中删除第i个元素G判断一个队列是否为空D读取队头兀素的值10.在初始为空的队列中顺序插入兀素a,b,c,d以后,紧局作育次删除操作, 此时的队尾儿系是.A aB bG c以d11.队列的顺序存储方式中判断循环队列为满的条件是.A front= =rearB、front=(rear+1 ) % (maxsize+1 )G front= =(rear+1 ) % maxsize以 front= =rear % maxsize12. 单链表Head中,在指针q所指结点后面插入一个由指针P所指结点,那么执行.A q->next = p-&

13、gt;next ; p->next = q;B、p->next = q->next ; q= p;G q->next = p->next ; p->next = q;以 p->next = q->next ; q->next = p;13. 一个栈的输入序列是 1, 2, 3, 4,那么以下序列中不可能是栈的输出序列的是.A 12348 4321G 2341以 412314. 设在栈中,由顶向下已存放元素 c, b, a,在第四个元素d入栈前,栈中元素可以出栈.试问在d入栈后,不可能的出栈序列是:.A d c b aB> c b d

14、aG c a d b以 c d b a15. 栈S最多能容纳4个元素.现有6个元素按 A B、C、以E、F的顺序进栈,问以下哪 一个序列是可能的出栈序列 A E D C B A F8B C E F AD G C B E D A F以 A D F E BC16. 设一个栈的入栈序列是 abcde,那么在以下输出序列中不可能的出栈序列是: A e d c b aB>d e c b aG d c e a b以 a b c d e17. 假设用一个大小为 6的数组来实现循环队列,且当前 rear和front的值分别为0和3.当从队列中删除一个元素,再参加两个元素后,rear和front的值分别为

15、.A 1和58 2和4G 4和2以5和118. 设有9个数据记录组成的线性表,它们的排序键码字的取值分别是11, 15, 20, 27,30, 35, 46, 88, 120,已经将它们根据排序码递增有序的方式存放在一维结构数组a0.8中从下标0开始到下标8结束的位置,那么当采用折半查找算法查找关键字值等于20的数据记录时,所需比较的元素的下标依次是:.注:计算中间位置时取下整A 0, 1, 28 4, 1 , 2G 4, 2D> 4, 3, 219. 采用折半查找方法进行查找的数据文件应满足的条件是:.A、顺序存储G顺序存储且已排序D>链式存储且已排序B链式存储三、判断题1. (

16、)单链表从任何一个结点出发,都能访问到所有结点.2. ()顺序表是一种随机存取的存储结构.3. ()线性表的逻辑顺序与存储顺序总是一致的.4. ()线性表的链式存储结构优于顺序存储结构.5. ()数据的存储结构是数据的逻辑结构在存储单元中的表示形式.6. ()程序的执行效率与数据存储结构的选择没有直接的关系.7. ()线性表的长度是指线性表所占存储空间的大小.8. ()线性表的长度决定了线性表所占存储空间的大小,但它不等于线性表所占存储 空间的大小.9. ()在采用链式存储结构的线性表上查找某个元素的平均效率比在采用顺序存储结 构的线性表上查找的平均效率高.10. ()链式存储结构的线性表适用

17、于对数据进行频繁的查找操作,而顺序存储结构的 线性表那么适宜于进行频繁地插入、删除操作.11. ()在单链表中,给定任一结点的地址p,那么可用下述语句将新结点s插入结点p的后面: p->next = s; s->next = p->next;12. ()二维数组是其数据元素为线性表的线性表.13. () N (N>1)维数组可以看作是线性表的推广.14. ()循环队列也存在空间溢出问题.15. ()队列和栈都是运算受限的线性表,插入或者删除运算只允许在表的同一端进行.16. ()从数据元素插入、删除的规那么来看,队列的本质特征是LIFO,栈的本质特征是FIFO.17.

18、()所有插入排序算法均是稳定的.18. ()顺序存储方式只能用于存储线性结构.19. ()程序的执行效率只决定于算法设计的技巧,与程序设计中所采用的数据的表示 方式及数据逻辑模型的实际存储形式无关.20. ()线性表的特点是每个元素都有一个前驱结点和一个后继结点.21. ()链表的每个结点中都包含一个指针.22. ()算法一定要有输入和输出.23. ()顺序查找算法可以用在顺序存储结构表示的线性表上查找数据元素,但不可以 用在链式存储结构的线性表上查找数据元素.24. ()折半查找方法只能用在采用顺序存储结构的有序线性表中来实现对某一数据项 的快速查找.25. ()折半查找方法可以用在采用单向

19、链表形式存储的有序线性表中实现对某一数据 项的快速查找.26. ()判断某个排序方法的稳定性可以通过一次或几次输入数据序列,看排序结果是否改变了原始待排数据序列中关键字值相同的数据是否发生了相对次序的改变,从而作出该排序算法是否稳定的结论.四、简做题1. 什么是算法具有哪些特性如何衡量一个算法的好坏算法与程序有何不同2. 线性表顺序存储结构的优缺点是什么3. 线性结构与非线性结构有何差异?4. 简述顺序表和链表之间的差异.5. 什么是排序方法的稳定性6. 什么叫栈它有哪些根本操作各个根本操作的含义是什么7. 什么叫队列它有哪些根本操作各个根本操作的含义是什么?五、综合题2.1. 给出以下稀疏矩

20、阵 A的三元组表示法的存储模型.330220-15003000A 10000000000002j给出以下稀疏矩阵所对应的三元组表示方法存储模型.012900000000000300001400024000001800000150070003. 给出以下稀疏矩阵 A的三元组表示法的存储模型.12 0 10 0 U 9 ' 00300000025000000-90000000* 00000气 J4. 设单链表的结点为:typedef struct node( int data;struct node *next LinkList;LinkList *p,q;如果

21、要求将由指针变量q所指向的结点插入到单向链接表中p所指向的结点之后,那么应执行的语句是什么要将p所指向的结点的数据局部修改为23,应执行的语句是什么5. 对于给定的一组关键字:503,087,512,067,908,170,889,276,675,453;请按关键字递减排序,写出直接插入排序、冒泡排序的各趟运行结果.6.某长度为10的有序表存储于一维结构数组中下标09的位置中,其中记录的关键键码值依次是:5,10,18,21,33,47,48,55,80, 125,现要查找关键码值为 18及83的记录,现规定在中间位置计算时采用“向下取整的方法,写出折半查找的过程及查找结果.7. 有序表中关键

22、字序列为:5, 10, 19, 21, 31, 37, 42, 48, 55, 150,现要查找 k为37及32的记录,写出其折半查找过程.8. 设待排序的记录共 7个,关键码分别为 8, 3, 2, 5, 9, 1, 6.试用直接插入、直接选择两种方法,以关键码的变化描述排序全过程(动态过程),要求按递减顺序排序.9. 设待排序文件共有12个记录,其关键字依次分别是28, 55, 06, 33, 161 , 81, 91,11, 25, 55' , 57, 02,请按选择排序的思想写出降序排序的全过程.10. 设有待排序的8个数据记录,其排序用关键字的取值依次是14, 35 ,18,

23、 5,乙21,35, 8,请用简单项选择择排序法写出降序排序的每一趟结果.11. 设有待排序的8个数据记录,其排序用关键字的取值依次是68, 45, 20, 90 , 15, 10,50, 8,请按直接选择排序的思想写出升序及降序排序的每一趟结果.12. 假设待排序的一批记录的关键字序列为14 , 35, 18, 5, 7, 21,请给出根据简单项选择择排序方法依据关键字取值升序和降序两种情况下的排序过程.13. 一个有序表的一批记录的关键字序列为(7, 11, 15, 20, 32, 45, 63, 70, 82, 91),存放在一个采用顺序存储结构表示的线性表中,其中数组元素的下标为0,9

24、的位置上分别对应存储有序表的第一元素直到最后一个元素.在折半查找中,中间位置指示器的计算式子中采用 取下整的方法,请给出查找关键字值为82和关键字值为13的记录的查找过程.14. 某长度为10的有序表存储于一维结构数组中下标09的位置中,其中记录的关键码值依次是:5,10,18,21,33,47,48,55,80,125 ,现要查找关键码值为18及83的记录,现规定在中间位置计算时采用“取下整的方法,写出折半查找的过程及查找结果.15. 设有待排序的8个数据记录,其排序用关键字的取值依次是68, 45, 20, 90 , 15, 10,50, 8,请用冒泡排序法写出升序排序的每一趟结果.16.

25、 对于给定的一组关键字:50,38,27,16,97,76,53,66;按关键字递减排序,写出冒泡排序的各趟运行结果.六、算法分析与设计题1.下面给出的算法的功能是在顺序存储结构表示的线性表中插入一个数据元素,请画出算法的流程图,在算法中对各个分支给出功能性注释.#define Null 0#define MaxSize 1024typedef int DataType;typedef struct nodeDataType dataMaxSize;int last;SequenList;int Insert(SequenList *L,DataType x,int i)SequenList

26、*p;int j;p=L;if(p->last=(MaxSize-1)(printf("n线性表已经满了,无法再参加!");return Null;elseif( (i<1) |( i>(p->last+1)(printf("所给插入位置不在有效范围之内!);return Null;else(for(j=L->last;j>=i-1;j-)L->dataj+1=L->dataj;L->datai-1=x;L->last=L->last+1;return (1);2. 现要求完成同类型的两个线性表的合

27、并运算,该运算将给定第二个线性表的元素追加到第一个线性表的最后一个元素之后,假定不会产生因空间缺乏而上溢的现象,运算完成后应修改第一个线性表的last分量以反映新的表长, 运算不破坏第二个线性表.预期的功能用下面的计算例如及算法流程图表示.请将以下给定的算法设计填写完整.算法功能描述:计算前 L1=1,3,5,7,9, L2=2,4,6,8计算后:L1=1,3,5,7,9,2,4,6,8,L2=2,4,6,8线性表的顺序存储结构定义:#define MaxSize 1024/*允许的最大数据元素数目*/typedef int DataType; /* 数据元素的类型 */typedef str

28、uct nodeDataType dataMaxSize; /*存储线性表中数据元素用的数组*/int last;/*存储表的最后一个元素存放在data数组中的下标号*/ SequenList;计算前:在L1表的存储结构体变量中,data0=1,data1=3,data2=5,data3=7,data4=9 last=4;在L2表的存储结构体变量中,计算前:data0=2,data1=4,data2=6,data3=8last=3计算后:在L1表的存储结构体变量中,data0=1,data1=3,data2=5,data3=7,data4=9,data5=2, data6=4,data7=6,

29、data8=8last=8;在L2表的存储结构体变量中,计算前:data0=2,data1=4,data2=6,data3=8last=3待完成的算法如下:void MergeList(SequenList *L1,Sequenlist *L2)(/*算法进入时:L1指向第一个线性表的结构体变量L2指向第二个线性表的结构体变量算法退出后:L1指向第一个线性表的结构体变量,其内容为合并后的表.L2指向第二个线性表的结构体变量,其内容未变.*/int i,j;/*分别表示第一个表及第二个表的当前位置指示器*/int k;/*循环限制变量*/int n1,n2; /*分别用于存放表 L1及表L2的长

30、度*/DataType x; /*存放从表L2中读出的数据元素*/n1=L1->last+1;n2=L2->last+1;i=L1->last+1;j=0;for(k=0;k<k+)(x=;L1->datai=x;i+;j+;=n1+n2-1;return;开始算法流程图:3.阅读下面的程序,绘制出主函数main()的程序流程图,并说明本程序实现的功能.#define maxsize 30#define NULL -1 typedef char datatype;typedef struct stack datatype elementsmaxsize;int t

31、op; S;void IniStack(S *s) s->top=-1;return;int Push(S *s,datatype ch) ( if(s->top=maxsize-1) ( printf("n stack overflow!n"); return NULL; else ( s->top+; s->elementss->top=ch; return(1); int Pop(S *s) (if(s->top<0) (printf("nStack is empty!n");return NULL; el

32、se (s->top-;return(s->top+1); main() (char ch1;S *s;int f1=f2=1;s=malloc(sizeof(S);IniStack(s);scanf("%c,&ch1);while(ch1!='$') if(ch1='(')f1=Push(s,ch1);if(ch1=')')f2=Pop(s);scanf("%c",&ch1); if(s->top=-1&&f1!=-1&&f2!=-1)printf(

33、"nBrackets match rightlyn");elseprintf("nThe expression is wrong.n");getch();4. 阅读下面的算法程序,绘制出算法流程图,并说明本算法程序实现的功能.#define NULL 0typedef int datatype;typedef struct node datatype data;struct node *next; linklist;INSERT(linklist *L, datatype x) ( linklist *p,*q, *s; s=(linklist *)ma

34、lloc(sizeof(linklist); s->data=x; P=L; q=L->next; while(q->data<x)&&(q->next!=NULL) p=q; q=q->next; if(q->next=NULL) q->next=s; s->next=NULL; else p->next=s; s->next=q; 5. 下面的自定义类型 SeqQueue表示循环队列的一种顺序存储结构实现方法,(1)请将相关的入队和出队运算(操作)函数填写完整;(2)写出测试程序的执行结果;(3)给程序加分析

35、注释./*- 文件 myqueue.h的内容如下-*/#define MaxLength 1024typedef int datatype;typedef struct sequeuedatatype dataMaxLength;int front,rear;SeqQueue;void SETNULLQS(SeqQueue *p)if(p=NULL) return;elsep->front=MaxLength-1;p->rear=MaxLength-1;return;int ENQUEUEQS(SeqQueue *p, datatype x)int tail;if(p->fr

36、ont= (p->rear+1)printf( n队已经满啦!n "); return (0);else(p->rear= ;tail=p->rear;p->datatail=x;return (1);int DEQUEUEQS(SeqQueue *p,datatype *px)(datatype Member1;if(p->front=p->rear) printf(n 队列空啦! n ");return (0) ;else(p->front= ;Member1=p->datap->front;*px=;return

37、(1);/* 文件 myqueue.h*/*测试程序局部*/#include <stdio.h>#include "myqueue.h"void main()int i,abc10=9,8,7,6,5,4,3,2,1,10;datatype in1,out1;SeqQueue myQue,*pQ;pQ=&myQue;SETNULLQS(pQ);printf(进入队列的元素依次是:n ");for(i=1;i<=10;i+)printf(%dt,abci-1);in1=abci-1;ENQUEUEQS(pQ,in1);printf( n从队

38、列中删除的元素依次是:n ");for(i=1;i<=10;i+)in1=abci-1;DEQUEUEQS(pQ,&out1); printf( %dt ,out1);6. 下面一段程序的功能是完成线性表的插入操作运算(要在线性表的第i个位置插入元素)请仔细阅读程序,完成两个要求:(1) 在画线空白处填入适宜的语句,使得整个程序完整;(2) 请画出以下程序的流程图.#define Maxlen 1024struct sqlisttp(int elemmaxlen;int last; sqlisttp;int Insert(sqlisttp L, int i, int x

39、)(int k;if(i<1| i>v.last+1)printf(插入位置不适宜!n")else if(v.lat>=maxlen-1)printf(线性表已满!n")else(for(k=v.last; k>=i; k-);非线性数据结构局部:一、填空题1. 不考虑顺序的3个结点可构成 种不同形态的树, 种不同形态的二叉树.2. 某棵完全二叉树的第4层有5个结点,贝U该完全二叉树叶子结点的总数为:.3. 一棵完全二叉树的第 5层有3个结点,其叶子结点数是 .4. 一棵具有110个结点的完全二叉树,假设 i = 54,那么结点i的双亲编号是 ;结点

40、i 的左孩子结点的编号是 ,结点i的右孩子结点的编号是 .5. 一棵具有48个结点的完全二叉树,假设 i = 20,那么结点i的双亲编号是 ;结点i 的左孩子结点编号是,右孩子结点编号是.6. 在有n个叶子结点的Huffman树中,总的结点数是:.7.8.9.10.11.12.种非线性数据结构,它由两个集合 V(G)和E(G)组成,V(G)是 的有限集合.优先搜索和 优先搜索两种方法.是一个递归过程.条弧;n个顶点的无向图最多有p所指结点是叶子结点的条件G的邻接矩阵A中,假设图是集合,E(G)是遍历图的根本方法有图的遍历根本方法中的非空有限1.2.n个顶点的有向图最多有在二叉树的二叉链表中,判

41、断某指针在无向图条边.正Ai,j等于 1,那么 Aj,i等、单项选择题树型结构的特点是:任意一个结点:可以有多个直接前趋B至少有1个前趋D如以下列图所示的4棵二叉树中,()可以有多个直接后继只有一个后继)不是完全二叉树.AB深度为5的二叉树至多有()个结点.A168 32G 31D、104.64个结点的完全二二叉树的深度为:( ).A88 7G 6D、55.将一棵有100个结点的完全二叉树从根这一层开始,每一层从左到右依次对结点进行编号,根结点编号为1 ,那么编为49的结点的左孩子的编号为:().A988 99G 50D、486.在一个无向图中,所有顶点的度之和等于边数的()倍.A1/28 1

42、G 2D、47.设有13个值,用它们组成一棵Huffman树,那么该Huffman树中共有() 个结点.A138 12G 26以25D3.它的双亲结8.7的结点x,CA、9.假设对一棵有16个结点的完全二叉树按层编号,那么对于编号为点及右孩子结点的编号分别为()2,148 2,15G 3,14假设对一棵有20个结点的完全二叉树按层编号,那么对于编号为点及左孩子结点的编号分别为()以 3,155的结点x,它的双亲结2,118 2,10G 3,910.将一棵有100个结点的完全二叉树从根这一层开始,每一层从左到右依次对结点进行编号,根结点编号为1,那么编号最大的非叶结点的编号为:50A 488 4

43、911. 无向图的邻接矩阵是一个()A、对称矩阵8零矩阵12. 由64个结点构成的完全二叉树,其深度为:A 8 B 、7 C 、6以 3,10上三角矩阵()13. 假设对一棵有16个结点的完全二叉树按层编号,那么对于编号为以对角矩阵7的结点x,它的双亲结)、3,14 D)、3,15点及右孩子结点的编号分别为(A、2,14 B 、2,15 C14, 图示二叉树的中序遍历序列是:、dbaefcg D、defbagcA abcdgef B 、dfebagc C 15.A ABCDEFGH B、BDAFEHGC C、DBFHGECA D、HGFEDCBA16.邻接表是图的一种().A、顺序存储结构B

44、、链式存储结构C 、索引存储结构 D 、散列存储结构i个结点发出的边,应该:17.给定有向图如右图所示,那么该图的一个强连通分量是:().A、A,B,C,F8 B,C,FG B,C,D,FD C,D,E,F18.一个有向图的邻接矩阵表示,要删除所有从第A、将邻接矩阵的第i行删除 B、将邻接矩阵的第i行元素全部置为0G将邻接矩阵的第i列删除 D、将邻接矩阵的第i列元素全部置为0三、判断题1. ()非线性数据结构可以顺序存储,也可以链接存储.2. ()非线性数据结构只能用链接方式才能表示其中数据元素的相互关系.3. ()完全二叉树一定是满二叉树.4. ()在平衡二叉树中,任意结点左右子树的高度差(

45、绝对值)不超过 1.5. ()假设一棵二叉树的任意一个非叶子结点的度为2,那么该二叉树为满二叉树.6. ()度为1的有序树与度为1的二叉树是等价的.7. ()二叉树的先序遍历序列中,任意一个结点均排列在其孩子结点的前面.8. ()一棵二叉树的先序序列和后序序列,就一定能构造出该二叉树.9. ()在霍夫曼树中,权值最小的结点离根结点最近.10. () 对任意一个图,从它的某个顶点出发进行一次深度优先或广度优先遍历可访问到 该图的每个顶点.11. ()线性数据结构可以采用顺序存储结构或链式存储结构,而非线性数据结构只能 采用链式存储结构.12. ()二叉树中的叶子结点就是二叉树没有左、右子树的结点.13. ()如果一棵树中某结点的度为1,那么该结点仅有一棵子树.14. ()在有向图中,假设存在有向边 <V1,V2>,那么一定存在有向边<V2, V1>.15. ()对任意一个图,从它的某个顶点出发进行一次深度优先或广度优先遍历后,并 不一定能访问到该图的每个顶点.16. ()用邻接矩阵法存储一个图时,在不考虑压缩存储的情况下,所占用的存储空间 大小只与图

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论