数据结构第2阶段测试题
数据结构 试题(A)-答案
3.建立平衡二叉树过程如图2所示(图中加阴影的结点表示要调整的结点)。
图2构造平衡二叉树过程
评分标准:每次调整占1分。
4.答:不能。因为在这里,二分查找只减少了关键字间的比较次数,而记录的移动次数不变,时间的复杂度仍为O(n2)。
评分标准:答对“不能”占3分,说明理由占5分。
A.872B.860
C.868D.864
8.一个具有1025个结点的二叉树的高h为。
A.11B.10
C.11~1025D.12~1024
9.一棵二叉树的后序遍历序列为DABEC,中序遍历序列为DEBAC,则先序遍历序列为。
A.ACBEDB.DECAB
C.DEABCD.CEDBA
10.对图1所示的无向图,从顶点1开始进行深度优先遍历;可得到顶点访问序列。
2.给出如下各种情况下求任意一个顶点的度的过程(只需文字描述):(8分)
(1)含n个顶点的无向图采用邻接矩阵存储;
(2)含n个顶点的无向图采用邻接表存储;
(3)含n个顶点的有向图采用邻接矩阵存储;
(4)含n个顶点的有向图采用邻接表存储。
3.将整数序列{4,5,7,2,1,3,6}中的数依次插入到一棵空的平衡二叉树中,试构造相应的平衡二叉树。(要求画出每个元素插入过程,若需调整,还需给出调整后的结果,并指出是什么类型的调整,12分)
A.输出第i(1≤i≤n)个元素值
B.交换第1个元素与第2个元素的值
C.顺序输出这n个元素的值
D.输出与给定值x相等的元素在线性表中的序号
4.设n个元素进栈序列是p1,p2,p3,…,pn,其输出序列是1,2,3,…,n,若p3=3,则p1的值。
A.可能是2B.一定是2
《数据结构》综合练习
综合练习一、单项选择题1.数据在计算机存储器内表示时,物理地址与逻辑地址不相同的,称之为(C ).A.存储结构B。
逻辑结构C.链式存储结构D。
顺序存储结构2.设语句x++的时间是单位时间,则以下语句的时间复杂度为( B ).for(i=1; i<=n; i++)for(j=i;j〈=n;j++)x++;A。
O(1) B.O(2n)C。
O(n) D.O(3n)3.链式存储结构的最大优点是( D )。
A。
便于随机存取B。
存储密度高C.无需预分配空间D.便于进行插入和删除操作4.假设在顺序表{a0,a1,……,a n-1}中,每一个数据元素所占的存储单元的数目为4,且第0个数据元素的存储地址为100,则第7个数据元素的存储地址是( D ).A。
106 B. 107 C。
124 D.1285.在线性表中若经常要存取第i个数据元素及其前趋,则宜采用( A )存储方式.A.顺序表B. 带头结点的单链表C。
不带头结点的单链表 D. 循环单链表6.在链表中若经常要删除表中最后一个结点或在最后一个结点之后插入一个新结点,则宜采用( C )存储方式。
A.顺序表B。
用头指针标识的循环单链表C。
用尾指针标识的循环单链表D。
双向链表7.在一个含有n个结点的有序单链表中插入一个新结点,使单链表仍然保持有序的算法的时间复杂度是( C )。
O(1) B。
O(log2n) C。
O(n) D。
O(n2)8.要将一个顺序表{a0,a1,……,a n—1}中第i个数据元素a i(0≤i≤n—1)删除,需要移动( B )个数据元素。
A.i B。
n—i-1 C. n-i D. n—i+19.在栈中存取数据的原则是( B )。
A。
先进先出 B。
先进后出C。
后进后出 D。
没有限制10.若将整数1、2、3、4依次进栈,则不可能得到的出栈序列是( D )。
A.1234 B. 1324 C. 4321 D. 142311.在链栈中,进行出栈操作时(B )。
国家开放大学(电大)数据结构(本)阶段性学习测验答案
一、单项选择题(每小题3分,共60分)题目1把数据存储到计算机中,并具体体现数据元素间的逻辑结构称为()。
A. 物理结构题目2下列说法中,不正确的是()。
C. 数据项可由若干个数据元素构成题目3一个存储结点存储一个()。
C. 数据类型题目4数据结构中,与所使用的计算机无关的是数据的()。
A. 逻辑结构题目5在线性表的顺序结构中,以下说法正确的是()。
B. 逻辑上相邻的元素在物理位置上也相邻题目6对链表, 以下叙述中正确的是()。
D. 不能随机访问任一结点题目7下列的叙述中,不属于算法特性的是()。
B. 可读性题目8算法的时间复杂度与()有关。
A. 算法本身题目9设有一个长度为n的顺序表,要在第i个元素之前(也就是插入元素作为新表的第i个元素),插入一个元素,则移动元素个数为()。
B. n-i+1题目10设有一个长度为n的顺序表,要删除第i个元素移动元素的个数为()。
C. n-i题目11在一个单链表中,p、q分别指向表中两个相邻的结点,且q所指结点是p所指结点的直接后继,现要删除q所指结点,可用语句()。
C. p->next=q->next题目12在一个单链表中p所指结点之后插入一个s所指的结点时,可执行()。
A. s->next=p->next; p->next=s;题目13非空的单向循环链表的尾结点满足()(设头指针为head,指针p指向尾结点)。
A. p->next==head题目14链表不具有的特点是()。
B. 可随机访问任一元素题目15带头结点的链表为空的判断条件是()(设头指针为head)。
C. head->next==NULL题目16在一个长度为n的顺序表中为了删除第5个元素,由第6个元素开始从后到前依次移动了15个元素。
则原顺序表的长度为()。
C. 20题目17有关线性表的正确说法是()。
B. 除了一个和最后一个元素外,其余元素都有一个且仅有一个直接前驱和一个直接后继题目18向一个有127个元素的顺序表中插入一个新元素,并保持原来的顺序不变,平均要移动()个元素。
python二级考试试题3
1.按照“后进先出”原则组织数据的数据结构是____栈双向链表二叉树队列正确答案:A2.以下选项的叙述中,正确的是在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况循环队列中元素的个数是由队头指针和队尾指针共同决定循环队列有队头和队尾两个指针,因此,循环队列是非线性结构正确答案:C3.关于数据的逻辑结构,以下选项中描述正确的是数据所占的存储空间量数据在计算机中的顺序存储方式数据的逻辑结构是反映数据元素之间逻辑关系的数据结构存储在外存中的数据正确答案:C4.以下选项中,不属于结构化程序设计方法的是逐步求精模块化可封装自顶向下正确答案:C5.以下选项中,不属于软件生命周期中开发阶段任务的是概要设计软件维护详细设计软件测试正确答案:B6.为了使模块尽可能独立,以下选项中描述正确的是模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强正确答案:A7.以下选项中叙述正确的是软件一旦交付就不需要再进行维护软件交付使用后其生命周期就结束软件维护指修复程序中被破坏的指令软件交付使用后还需要进行维护正确答案:D8.数据独立性是数据库技术的重要特点之一,关于数据独立性,以下选项中描述正确的是不同数据被存放在不同的文件中不同数据只能被对应的应用程序所使用以上三种说法都不对数据与程序独立存放正确答案:C9.以下选项中,数据库系统的核心是数据库管理系统数据库数据库管理员数据模型正确答案:A10.一间宿舍可以住多个学生,以下选项中描述了实体宿舍和学生之间联系的是一对多多对一多对多一对一正确答案:A11.以下选项中不是Python文件读操作方法的是readlinereadallreadtextread正确答案:C12.以下选项中说法不正确的是C语言是静态语言,Python语言是脚本语言编译是将源代码转换成目标代码的过程解释是将源代码逐条转换成目标代码同时逐条运行目标代码的过程静态语言采用解释方式执行,脚本语言采用编译方式执行正确答案:D13.以下选项中,不是Python语言特点的是变量声明:Python语言具有使用变量需要先定义后使用的特点平台无关:Python程序可以在任何安装了解释器的操作系统环境中执行黏性扩展:Python语言能够集成C、C++等语言编写的代码强制可读:Python语言通过强制缩进来体现语句间的逻辑关系正确答案:A14.拟在屏幕上打印输出“Hello World”,以下选项中正确的是print('Hello World')printf("Hello World")printf('Hello World')print(Hello World)正确答案:A15.IDLE环境的退出命令是esc()close()回车键exit()正确答案:D16.以下选项中,不符合Python语言变量命名规则的是keyword33_33_keyword_33keywordkeyword_33正确答案:B17.以下选项中,不是Python语言保留字的是whilecontinuegotofor正确答案:C18.以下选项中,Python语言中代码注释使用的符号是/*……*/!#关于Python语言的变量,以下选项中说法正确的是随时声明、随时使用、随时释放随时命名、随时赋值、随时使用随时声明、随时赋值、随时变换类型随时命名、随时赋值、随时变换类型正确答案:B20.Python语言提供的3个基本数字类型是整数类型、浮点数类型、复数类型整数类型、二进制类型、浮点数类型整数类型、二进制类型、复数类型整数类型、二进制类型、浮点数类型正确答案:A21.以下选项中,不属于IPO模式一部分的是Program (程序)Process (处理)Output (输出)Input (输入)正确答案:A22.以下选项中,属于Python语言中合法的二进制整数是0B10100B10190bC3F0b1708正确答案:A23.关于Python语言的浮点数类型,以下选项中描述错误的是浮点数类型表示带有小数的类型Python语言要求所有浮点数必须带有小数部分小数部分不可以为0浮点数类型与数学中实数的概念一致正确答案:C24.关于Python语言数值操作符,以下选项中描述错误的是x以下选项中,不是Python语言基本控制结构的是程序异常循环结构跳转结构顺序结构正确答案:C26.关于分支结构,以下选项中描述不正确的是if 语句中条件部分可以使用任何能够产生True和False的语句和函数二分支结构有一种紧凑形式,使用保留字if和elif实现多分支结构用于设置多个判断条件以及对应的多条执行路径if 语句中语句块执行与否依赖于条件判断正确答案:B27.关于Python函数,以下选项中描述错误的是函数是一段可重用的语句组函数通过函数名进行调用每次使用函数需要提供相同的参数作为输入函数是一段具有特定功能的语句组正确答案:C28.以下选项中,不是Python中用于开发用户界面的第三方库是PyQtwxPythonpygtkturtle正确答案:D29.以下选项中,不是Python中用于进行数据分析及可视化处理的第三方库是pandasmayavi2mxnetnumpy正确答案:C30.以下选项中,不是Python中用于进行Web开发的第三方库是Djangoscrapypyramidflask正确答案:B31.下面代码的执行结果是>>>+++8正确答案:D32.下面代码的执行结果是>>>s ="11+5in">>>eval(s[1:-2])611+5执行错误16正确答案:A33.下面代码的执行结果是>>>abs(-3+4j)执行错误正确答案:B34.下面代码的执行结果是>>>x =2>>>x *=3+5**21556819213正确答案:B35.下面代码的执行结果是ls=[[1,2,3],[[4,5],6],[7,8]]print(len(ls))3481正确答案:A36.下面代码的执行结果是a ="Python等级考试"b ="="c =">"print("{0:{1}{3}{2}}".format(a, b,25, c))Python等级考试===============>>>>>>>>>>>>>>>Python等级考试Python等级考试==============================Python等级考试正确答案:D37.下面代码的执行结果是:ls =["2020","","Python"](2020)([2020,"2020"])print(ls)['2020', '', 'Python', 2020]['2020', '', 'Python', 2020, [2020, '2020']]['2020', '', 'Python', 2020, ['2020']]['2020', '', 'Python', 2020, 2020, '2020']正确答案:B38.设文件内容如下:巴哈马,巴林,孟加拉国,巴巴多斯白俄罗斯,比利时,伯利兹下面代码的执行结果是:f = open("","r")ls =().split(",")()print(ls)['巴哈马', '巴林', '孟加拉国', '巴巴多斯\n白俄罗斯', '比利时', '伯利兹']['巴哈马,巴林,孟加拉国,巴巴多斯,白俄罗斯,比利时,伯利兹']['巴哈马', '巴林', '孟加拉国', '巴巴多斯', '\n', '白俄罗斯', '比利时', '伯利兹']['巴哈马', '巴林', '孟加拉国', '巴巴多斯', '白俄罗斯', '比利时', '伯利兹']正确答案:A39.下面代码的执行结果是:d ={}for i in range(26):d[chr(i+ord("a"))]= chr((i+13)%26+ ord("a"))for c in"Python":print(c, c), end="")CabuglPythonPabuglPlguba正确答案:D40.给出如下代码:while True:guess = eval(input())if guess ==0x452//2: break作为输入能够结束程序运行的是5530x452"0x452//2"break正确答案:A。
数据结构期末考试试题(含答案)
数据结构期末考试试题(含答案)2005年-2006学年第⼆学期“数据结构”考试试题(A)姓名学号(序号)_答案隐藏班号要求:所有的题⽬的解答均写在答题纸上(每张答题纸上要写清楚姓名、班号和学号),需写清楚题⽬的序号。
每张答题纸都要写上姓名和序号。
⼀、单项选择题(每⼩题2分,共20分)1.数据的运算a 。
A.效率与采⽤何种存储结构有关B.是根据存储结构来定义的C.有算术运算和关系运算两⼤类D.必须⽤程序设计语⾔来描述答:A。
2.链表不具备的特点是 a 。
A.可随机访问任⼀结点B.插⼊删除不需要移动元素C.不必事先估计存储空间D.所需空间与其长度成正⽐答:参见本节要点3。
本题答案为:A。
3.在顺序表中删除⼀个元素的时间复杂度为 c 。
A.O(1)B.O(log2n)C.O(n)D.O(n2)答:C。
4.以下线性表的存储结构中具有随机存取功能的是d 。
A.不带头结点的单链表B.带头结点的单链表C.循环双链表D.顺序表解D。
5.⼀个栈的进栈序列是a,b,c,d,e,则栈的不可能的输出序列是c 。
A.edcba B.decbaC.dceabD.abcde答:C。
6.循环队列qu的队空条件是 d 。
A. (qu.rear+1)%MaxSize==(qu.front+1)%MaxSizeB. (qu.rear+1)%MaxSize==qu.front+1C.(qu.rear+1)%MaxSize==qu.frontD.qu.rear==qu.front答:D。
7.两个串相等必有串长度相等且 b 。
A.串的各位置字符任意B.串中各位置字符均对应相等C.两个串含有相同的字符D.两个所含字符任意答:B。
8.⽤直接插⼊排序对下⾯四个序列进⾏递增排序,元素⽐较次数最少的是c 。
A.94,32,40,90,80,46,21,69B.32,40,21,46,69,94,90,80C.21,32,46,40,80,69,90,94D.90,69,80,46,21,32,94,40答:C。
数据结构阶段测验
线性数据结构测验一、 选择题 (每题4分,共40分)1、线性表是具有n个( )的有限序列(n≥0)。
A.数据对象 B.字符 C.数据元素 D.数据项2、线性表的顺序存储结构是一种( )的存储结构,线性表的链式存储结构是一种( )的存储结构。
A.随机存取 B.顺序存取 C.索引存取 D.散列存取3、将一个递归算法改为对应的非递归算法时,通常需要使用( )。
A.栈 B.队列 C.循环队列 D.优先队列4、在一个链队列中,假设f和r分别为队首和队尾指针,则插入s所指结点的操作是( )。
A.f‐>next=s;f=s; B.r‐>next=s;r=s; C.s‐>next=r;r=s; D.s‐>next=f;f=s;5、串的长度是指( )A.串中所含不同字母的个数 B.串中所含字符的个数C.串中所含不同字符的个数 D.串中所含非空格字符的个数6、若串S1=‘ABCDEFG’, S2=‘9898’ ,S3=‘###’,S4=‘012345’,执行concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,index(S2,‘8’),length(S2))) 其结果为( )A.ABC###G0123 B.ABCD###2345 C.ABC###G2345 D.ABC###G12347、常对数组进行的两种基本操作是( )A.建立与删除 B.索引和修改 C.查找和修改 D.查找与索引8、设有一8×8下三角矩阵A[8][8],采用按行压缩存储的方式存放在一维数组B[ ]中,则数组B[ ]的容量至少需要( )个元素空间。
A.32 B.36 C.16 D.649、 假设有60行70列的二维数组a[1…60, 1…70]以列序为主序顺序存储,其基地址为10000,每个元素占2个存储单元,那么第32行第58列的元素a[32,58]的存储地址为( )。
数据结构(专)阶段练习2
华东理工大学网络学院(专科)《数据结构》------第3章、第4章、第5章班级学号姓名成绩一、填空题(每空1分,共20分)1. 栈和队列是两种特殊的线性表,栈的特点是先进后出,表达式求值,栈的典型应用有和实现递归过程。
2. 在具有n个单元的循环队列中,队列满时共有n-1 个元素。
3. 若串的长度不能确定,可采用动态存储结构,为串值分配一个存储空间,同时建立一个串的描述子以指示串值的长度和串在存储空间中的位置,称该结构为堆/堆结构。
4. 稀疏矩阵一种常用的压缩存储方法称为三元组表方式,即每个三元组表中的元素由、行、列、值、三部分组成。
5. 二维数组A[10][20]采用列序为主方式存储,每个元素占10个存储单元,且A[0][0]的存储地址是2000,则A[6][12]的地址是3260 。
6.进栈序列为a,b,c,则通过出栈和进栈操作可能得到的a,b,c的不同的排列序列有5 种。
7. 广义表((a,b),c,d)的表头是(a, b) ,表尾是(c,d) 。
8.已知二维数组A[20][10]采用行序为主方式存储,每个元素占2个存储单元,并且A[10][5]的存储地址是1000,则A[18][9]的存储地址是1168 。
9. 广义表((((a),b),c),d)的表头是(((a),b),c) ,表尾是(d) 。
10. 设s=’YOU ARE JUDGING IT RIGHT OR WRONG’,顺序执行下列操作:SubString(sub1,s,1,8);SubString(sub2,s,20,5);StrCat(sub1,sub2); 则最后sub1的值为:’YOU ARE RIGHT’。
11. 假设用循环单链表实现队列,若队列非空,且队尾指针为R, 则将新结点S加入队列时,需执行下面语句:S->next=R->next ;R->next=S ;R=S 。
12.设有两个串p和q,求q在p中首次出现的位置的运算称作子串定位。
数据结构与算法题库(含参考答案)
数据结构与算法题库(含参考答案)一、单选题(共100题,每题1分,共100分)1、在一次校园活动中拍摄了很多数码照片,现需将这些照片整理到一个PowerPoint 演示文稿中,快速制作的最优操作方法是:A、创建一个 PowerPoint 相册文件。
B、创建一个 PowerPoint 演示文稿,然后批量插入图片。
C、创建一个 PowerPoint 演示文稿,然后在每页幻灯片中插入图片。
D、在文件夹中选中所有照片,然后单击鼠标右键直接发送到PowerPoint 演示文稿中。
正确答案:A2、下面对“对象”概念描述错误的是A、对象不具有封装性B、对象是属性和方法的封装体C、对象间的通信是靠消息传递D、一个对象是其对应类的实例正确答案:A3、设栈与队列初始状态为空。
首先A,B,C,D,E依次入栈,再F,G,H,I,J 依次入队;然后依次出队至队空,再依次出栈至栈空。
则输出序列为A、F,G,H,I,J,E,D,C,B,AB、E,D,C,B,A,J,I,H,G,FC、F,G,H,I,J,A,B,C,D,E,D、E,D,C,B,A,F,G,H,I,J正确答案:A4、设表的长度为 20。
则在最坏情况下,冒泡排序的比较次数为A、20B、19C、90D、190正确答案:D5、设二叉树的前序序列为 ABDEGHCFIJ,中序序列为 DBGEHACIFJ。
则后序序列为A、DGHEBIJFCAB、JIHGFEDCBAC、GHIJDEFBCAD、ABCDEFGHIJ正确答案:A6、Excel工作表B列保存了11位手机号码信息,为了保护个人隐私,需将手机号码的后 4 位均用“*”表示,以 B2 单元格为例,最优的操作方法是:A、=REPLACE(B2,7,4,"****")B、=REPLACE(B2,8,4,"****")C、=MID(B2,7,4,"****")D、=MID(B2,8,4,"****")第 10 组正确答案:B7、小金从网站上查到了最近一次全国人口普查的数据表格,他准备将这份表格中的数据引用到 Excel 中以便进一步分析,最优的操作方法是:A、通过 Excel 中的“自网站获取外部数据”功能,直接将网页上的表格导入到 Excel 工作表中。
数据结构阶段测评大全含答案
数据结构-阶段测评11.单选题1.15.0计算机识别、存储和加工处理的对象被统称为(A ) 您答对了• a数据•• b数据元素•• c数据结构•• d数据类型•本题考核数据的基本概念1.25.0非空的循环单链表head的尾结点(由p所指向)满足(C)。
您答对了• ap->next==NULL•• bp==NULL•• cp->next==head•• dp==head•本题考核循环单链表的基本特点。
1.35.0若长度为n的线性表采用顺序存储结构存储,在第i个位置上插入一个新元素的时间复杂度为(A)。
您答对了• aO(n)•• bO(1)•• cO(n2)•• dO(n3)•本题考核顺序表的插入运算的时间复杂度。
1.45.0下面程序段中a[i][j]=0语句执行的时间复杂度是( D)。
for(i=0;i<n;i++)for(j=1;j<m;j++)a[i][j]=0;您答对了• aO(n)•• bO(m+n+1)•• cO(m+n)•• dO(m*n)•本题考核时间复杂度的计算方法1.55.0在一个具有n个结点的有序单链表中插入一个新结点并保持单链表仍然有序的时间复杂度是(B)。
您答对了• aO(1)•• bO(n)•• cO(n2)•• dO(nlog2n)•因要保持有序,所以需要查找插入结点的位置,而在链表中查找结点位置的时间复杂度为O(n),所以本题选B。
1.65.0在一个长度为n的顺序表中删除第i个元素(1<=i<=n)时,需向前移动(A)个元素。
您答对了• an-i•• bn-i+1•• cn-i-1•• di•考核顺序表的基本操作1.75.0设顺序表有10个元素,则在第5个元素前插入一个元素所需移动元素的个数为( B)。
您答对了• a5•• b6•• c7•• d9•在第5个元素前插入元素需要将第5个元素开始的所有元素后移,所以本题答案为B。
1.85.0算法指的是(D )。
计算机二级公共底子部分题目
公共基础部分题目1)算法的空间复杂度是指________。
A)算法程序的长度 B)算法程序中的指令条数 C)算法程序所占的存储空间 D)算法执行过程中所需要的存储空间 答案:D 评析:一个算法的空间复杂度,一般是指执行这个算法所需的内存空间。
一个算法所占用的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间。
(2)下列关于栈的叙述中正确的是________。
A)在栈中只能插入数据 B)在栈中只能删除数据 C)栈是先进先出的线性表 D)栈是先进后出的线性表 答案:D 评析:栈是限定在一端进行插入与删除的线性表。
栈是按照"先进后出"的或"后进先出"的原则组织数据的,因此,栈也被称为"先进后出"表或"后进先出"表。
(3)在深度为5的满二叉树中,叶子结点的个数为________。
A)32 B)31 C)16 D)15 答案:C 评析:所谓满二叉树是指这样的一种二叉树:除最后一层外,每层上的所有结点都有两个子结点。
这就是说,在满二叉树中,每一层上的结点数都达到最大值,即在满二叉树的第K层上有2K-1个结点,且深度为m的满二叉树有2m个结点。
在满二叉树中,最后一层的结点个数就是叶子结点的个数,本题中深度为5,故叶子结点数为25.1=24=16。
(4)对建立良好的程序设计风格,下面描述正确的是________。
A)程序应简单、清晰、可读性好 B)符号名的命名要符合语法 C)充分考虑程序的执行效率 D)程序的注释可有可无 答案:A 评析:要形成良好的程序设计风格,主要应注重和考虑下述一些因素:符号名的命名应具有一定的实际含义,以便于对程序功能的理解;正确的注释能够帮助读者理解程序;程序编写应优先考虑清晰性,除非对效率有特殊要求,程序编写要做到清晰第一,效率第二。
(5)下面对对象概念描述错误的是________。
福师20年秋数据结构概论在线作业二【标准答案】
福师《数据结构概论》在线作业二-0002试卷总分:100得分:100一、单选题(共25道试题,共50分)1.设森林F对应的二叉树为B,它有m个结点,B的根为p,p的右子树结点个数为 n,森林F中第一棵树的结点个数是()A.m-nB.m-n-1C.n+1D.条件不足,无法确定答案:A2.若二叉树采用二叉链表存储结构,要交换其所有分支结点左、右子树的位置,利用()遍历方法最合适。
A.前序B.中序C.后序D.按层次答案:C3.一个算法应该是()。
A.程序B.问题求解步骤的描述C.要满足五个基本特性D.A 和 C.答案:B4.栈和队列的共同点是()。
A.都是先进先出8.都是先进后出C.只允许在端点处插入和删除元素D.没有共同点E.限制存取点的线性结构F.限制存取点的非线性结构答案:C5.下面的程序段中,对x的赋值语句的频度为()FOR i:=1 TO n DOFOR j:=1 TO n DO x:=x+1;A.O(2n)B.O(n)C.O(n"2)D.O(log2n)答案:C6.算法的计算量的大小称为计算的()A.效率B.复杂性C.现实性D.难度答案:B7.对于栈操作数据的原则是()A.先进先出8.后进先出C.后进后出D.不分顺序答案:B8.下列表达式中结果不是日期型的是?A.CT0D("2000/10/01")B.「99/10/01}+365C.VAL("2000/10/01")D.DATE()答案:C9.关键路径是事件结点网络中()A.从源点到汇点的最长路径B.从源点到汇点的最短路径C.最长回路D.最短回路答案:A10.就平均性能而言,目前最好的内排序方法是()排序法。
A.冒泡B.希尔插入C.交换D.快速答案:D11.栈和队都是()A.顺序存储的B.线性结构C.链式存储的D.非线性结构答案:B12.关系数据库中,实现实体之间的联系是通过表与表之间的?A.公共索引B.公共存储C.公共元组D.公共属性答案:D13.下列关于候选键的说法中错误的是?A.键是惟一标识实体的属性集B.候选键能惟一决定一个元组C.能惟一决定一个元组的属性集是候选键D.候选键中的属性均为主属性答案:C14.假设以行序为主序存储二维数组A=array[1..100,1..100],设每个数据元素占2个存储单元,基地址为10,则LOC[5,5]=()A.808B.818C.1010D.1020答案:B15.链表不具有的特点是()儿插入、删除不需要移动元素B.可随机访问任一元素C.不必事先估计存储空间D.所需空间与线性长度成正比答案:B16.若要求尽可能快地对序列进行稳定的排序,则应选(A.快速排序B.归并排序C.冒泡排序D.堆答案:B17.下面关于关系数据模型的说法,正确的是哪一项?A.只能表示实体间的1:1联系B.只能表示实体间的l:n联系C.只能表示实体间的m:n联系D.可以表示实体间的上述三种联系答案:D18.若长度为n的线性表采用顺序存储结构,在其第i个位置插入一个新元素的算法的时间复杂度为()(1<=i<=n+1)。
软件建模与UML智慧树知到课后章节答案2023年下山东理工大学
软件建模与UML智慧树知到课后章节答案2023年下山东理工大学山东理工大学第一章测试1.结构化设计阶段的主要设计思路是()。
答案:自顶向下,逐步求精2.结构化分析建模的3种核心模型为()。
答案:DD;ERD;DFD3.数据流图的外部实体可能是与系统交互的()。
答案:硬件设备;人;软件系统;部门;组织4.环境图也称顶层数据流图,它仅包括一个数据处理过程,即目标系统。
答案:对5.ER图是数据库设计的基础,因此又称为()。
答案:数据库概念模型6.数据字典是以词条方式定义在数据模型、功能模型和行为模型中出现的数据对象及控制信息的特性,其定义对象包括()。
答案:数据源点/汇点;加工(过程)条目;数据流条目;数据文件7.DD中最常用的数据结构描述方式有()。
答案:定义式 ;Warier图8.结构图可以清楚的表达出模块间的层次调用关系和信息传递,但不能表达有条件的模块调用。
答案:错9.结构图优化时,需要应用高耦合、低内聚原则。
答案:错10.关于结构化程序设计的描述,正确的是()。
答案:选用的控制结构只准有一个入口和一个出口。
; 使用顺序、选择、循环这三种基本控制结构表达程序逻辑。
; 严格控制GOTO语句。
11.请根据描述,对学校图书管理系统建立DFD。
图书管理系统主要目的是方便学校图书馆的借还书工作。
图书管理员负责进行图书的管理,主要包括图书的入库、图书信息的修改和图书的出库。
其他工作人员负责完成借书和还书的操作。
读者可以通过系统查询图书信息及流通状态,可以自助借书、还书。
另外还可以通过系统进行图书的预约和续借。
读者分为教师和学生。
教师最多允许借10本书,借阅时长2个月。
学生最多允许借5本书,借阅时长为1个月。
两类读者的续借时长都为1个月。
对已借出图书到期时长小于一周时,允许预约,预约期为10天,多位读者预约时,按预约时间排序;超期未借,预约自动失效。
存在预约的图书只能由预约读者借阅。
还书时,如果发生超期,需要缴纳罚款。
第2-6-7章 测试题(附答案)
第2-6-7章测试题一.单选题1.下面的选项不是关系数据库基本特征的是(A )。
A. 不同的列应有不同的数据类型B. 不同的列应有不同的列名C. 与行的次序无关D. 与列的次序无关2.一个关系只有一个(D )。
A. 候选码B. 外码C. 超码D. 主码3.关系模型中,一个码是(C )。
A. 可以由多个任意属性组成B. 至多由一个属性组成C. 由一个或多个属性组成,其值能够惟一标识关系中一个元组D. 以上都不是4.现有如下关系:患者(患者编号,患者姓名,性别,出生日期,所在单位)医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果)其中,医疗关系中的外码是(A )。
A.患者编号B.患者姓名C.患者编号和患者姓名D.医生编号和患者编号5.关系代数运算是以(C )为基础的运算。
A.关系运算B.谓词演算C.集合运算D.代数运算6.关系数据库管理系统应能实现的专门关系运算包括(B )。
A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表7.五种基本关系代数运算是(A )。
A. ∪-×σπB. ∪-σπC. ∪∩×σπD. ∪∩σπ8.规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足:每一个属性都是(B )。
A.长度不变的B.不可分解的C.互相关联的D.互不相关的9.已知关系模式R(A,B,C,D,E)及其上的函数依赖集合F={A→D,B→C ,E→A },该关系模式的候选码是(B )。
A.ABB.BEC.CDD.DE10.关系模式中,满足2NF的模式(B )。
A.可能是1NFB.必定是1NFC.必定是3NFD.必定是BCNF11.消除了部分函数依赖的1NF的关系模式,必定是(B )。
A.1NFB.2NFC.3NFD.BCNF12.关系模式的候选码可以有1个或多个,而主码有(C )。
A.多个B.0个C.1个D.1个或多个13.候选码的属性可以有(D )。
计数机二级考试
一、选择题(1) 下面叙述正确的是(C)A. 算法的执行效率与数据的存储结构无关B. 算法的空间复杂度是指算法程序中指令(或语句)的条数C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止D. 以上三种描述都不对(2) 以下数据结构中不属于线性数据结构的是(C)A. 队列B. 线性表C. 二叉树D. 栈(3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得A. 8B. 16C. 32D. 15(4) 下面描述中,符合结构化程序设计风格的是(A)A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B. 模块只有一个入口,可以有多个出口C. 注重提高程序的执行效率D. 不使用goto语句(5) 下面概念中,不属于面向对象方法的是 (D) 注:P55-58A. 对象B. 继承C. 类D. 过程调用(6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)A. 可行性分析B. 需求分析C. 详细设计D. 程序编码(7) 在软件开发中,下面任务不属于设计阶段的是(D)A. 数据结构设计B. 给出系统模块结构C. 定义模块算法D. 定义需求并建立系统模型(8) 数据库系统的核心是(B)A. 数据模型B. 数据库管理系统C. 软件工具D. 数据库(9) 下列叙述中正确的是(C)A.数据库是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致(10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A) 注:P108A. 内模式B. 外模式C. 概念模式D. 逻辑模式(11) 算法的时间复杂度是指(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数(12) 算法的空间复杂度是指(D)A. 算法程序的长度B. 算法程序中的指令条数C. 算法程序所占的存储空间D. 算法执行过程中所需要的存储空间(13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出A. 349B. 350C. 255D. 351(14) 结构化程序设计主要强调的是(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性(15) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D) 注:即第一个阶段A. 概要设计B. 详细设计C. 可行性分析D. 需求分析(16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。
数据结构阶段复习题(1)
• 将两个各有n个元素的有序表归并成一个有序表 ,最少的比较次数是( )
– A. n-1 – C. 2n-1 B. n D. 2n
假设一个算术表达式中可以包含以下三种括号:“(”和“)”、"*”和“+”、“,” 和“-”,并且这三种括号可以按照任意的次序嵌套使用。 下面仅考虑表达式中括 号的匹配关系,其他问题暂时忽略。例如,表达式“[a.(b.5)+*c*,-+”中的括号 是完全匹配的,而表达式“[a-(b-5+))*c”中的括号不是完全匹配的,因为“(”与 “+”不能匹配,而且多了一个“)”,即缺少一个与“)”相匹配的“(”。 函数 ifmatched (char expr[])的功能是用栈来判断表达式中的括号是否匹配,表达式以 字符串的形式存储在字符数组expr中。若表达式中的括号完全匹配,则该函数的 返回值为Matched,否则返回值为Mismatched。 该函数的处理思路如下: (1)设置 一个初始为空的栈,从左至右扫描表达式。 (2)若遇上左括号,则令其入栈;若 遇上右括号,则需要与栈顶的左括号进行匹配。 (3)若所遇到的右括号能与栈顶 的左括号配对,则令栈顶的左括号出栈,然后继续匹配过程;否则返回 Mismatched,结束判断过程。 (4)若表达式扫描结束,同时栈变为空,则说明表 达式中的括号能完全匹配,返回Matched。 函数ifMatched中用到了两种用户自定 义数据类型BOOL 和STACK,其中,BOOL类型的定义如下: typedef enum {Mismatched, Matched} BOOL; STACK(即栈类型)的定义省略,栈的基本操作的 函数原型说明如下: void InitStack(STACK *S):初始化一个空栈。 void Push(STACK *S,char e):将一个字符压栈,栈中元素数目增1。 void Pop(STACK *S):栈顶元素 出栈,栈中元素数目减1。 char Top(STACK S):返回非空栈S的栈顶元素值,栈中 元素数目不变。 int IsEmpty(STACK S):若S是空栈,则返回1,否则返回0。
数据结构第九章 排序题库(40道)
数据结构第九章排序1、内排序方法中,从未排序序列中依次取出元素与已排序序列中的元素进行比较,将其放入已排序序列的正确位置上的方法,称为( )。
——[单选题]A 希尔排序B 冒泡排序C 直接插入排序D 简单选择排序正确答案:C2、对有n个记录的表进行直接插入排序,在最坏情况下需进行( )次关键字比较。
——[单选题]A n-1B n+1C n/2D n(n-1)/2正确答案:D3、在下列算法中,( )算法可能出现下列情况:在最后一趟开始之前,所有的元素都不在其最终的位置上。
——[单选题]A 堆排序B 冒泡排序C 直接插入排序D 快速排序正确答案:C4、对数据序列{15,9,7,8,20,-1,4}进行排序,进行一趟后数据的排序变为{9,15,7,8,20,-1,4},则采用的是( )算法。
——[单选题]A 简单选择排序B 冒泡排序C 直接插入排序D 堆排序正确答案:C5、数据序列{5,4,15,10,3,1,9,6,2}是某排序方法第一趟后的结果,该排序算法可能是( )。
——[单选题]A 冒泡排序B 二路归并排序C 堆排序D 简单选择排序正确答案:B6、从未排序序列中挑选元素,并将其依次插入已排序序列的一端的方法,称为( )。
——[单选题]A 希尔排序B 归并排序C 直接插入排序D 简单选择排序正确答案:D7、在以下排序方法中,关键字比较的次数与元素的初始排列次序无关的是( )。
——[单选题]A 希尔排序B 冒泡排序C 插入排序D 简单选择排序正确答案:D8、对n个不同的关键字进行递增冒泡排序,在下列哪种情况下比较的次数最多( )。
——[单选题]A 元素无序B 元素递增有序C 元素递减有序D 都一样正确答案:C9、对数据序列(8,9,10,4,5,6,20,1,2)进行递增排序,采用每趟冒出一个最小元素的冒泡排序算法,需要进行的趟数至少是( )。
——[单选题]A 3B 4C 5D 8正确答案:C10、为实现快速排序法,待排序序列最好采用的存储方式是( )。
数据结构和数据库考试及答案
数据结构和数据库考试及答案————————————————————————————————作者:————————————————————————————————日期:一、选择题-(1) 下面叙述正确的是(C)-A. 算法的执行效率与数据的存储结构无关B. 算法的空间复杂度是指算法程序中指令(或语句)的条数C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止D. 以上三种描述都不对-(2) 以下数据结构中不属于线性数据结构的是(C)-A. 队列B. 线性表C. 二叉树D. 栈-(3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得-A. 8B. 16C. 32D. 15-(4) 下面描述中,符合结构化程序设计风格的是(A)-A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B. 模块只有一个入口,可以有多个出口C. 注重提高程序的执行效率D. 不使用goto语句-(5) 下面概念中,不属于面向对象方法的是(D) 注:P55-58-A. 对象B. 继承C. 类D. 过程调用-(6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)-A. 可行性分析B. 需求分析C. 详细设计D. 程序编码-(7) 在软件开发中,下面任务不属于设计阶段的是(D)-A. 数据结构设计B. 给出系统模块结构-C. 定义模块算法D. 定义需求并建立系统模型-(8) 数据库系统的核心是(B)-A. 数据模型B. 数据库管理系统C. 软件工具D. 数据库-(9) 下列叙述中正确的是(C)-A.数据库是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致-(10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A) 注:P108-A. 内模式B. 外模式C. 概念模式D. 逻辑模式-(11) 算法的时间复杂度是指(C)-A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数-(12) 算法的空间复杂度是指(D)-A. 算法程序的长度B. 算法程序中的指令条数C. 算法程序所占的存储空间D. 算法执行过程中所需要的存储空间-(13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出-A. 349B. 350C. 255D. 351-(14) 结构化程序设计主要强调的是(B)-A.程序的规模B.程序的易读性-C.程序的执行效率D.程序的可移植性-(15) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D) 注:即第一个阶段-A. 概要设计B. 详细设计C. 可行性分析D. 需求分析-(16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。
软件技术基础习题答案
软件技术基础习题答案【篇一:软件技术基础试题库】>课程名称:软件技术基础适用专业:软件技术、计算机应用、网络、信息等计算机相关专业第一章概述第二章数据结构一、单项选择题1.若长度为n的线性表采用顺序存储结构,删除它的第i数据元素之前,需要先依次向前移动_______个数据元素。
( )a. n-ib. n+ic. n-i-1d. n-i+1答案:a2.在单链表中,已知q指的结点是p指的结点的直接前驱结点,若在q和p指的结点之间插入一个由s指的结点,则需执行________。
( )a. link(s)←link(p),link(p)←sb. link(q)←s,link(s)←pc. link(p)←link(s),link(s)←pd. link(p)←s,link(s)←q答案:b3.高度为h(h0) 的二叉树最少有________个结点。
()a. hb. h-1c. h+1d. 2h答案:a4.n个顶点的带权无向连通图的最小生成树包含 ________ 个顶点。
()a.n-1b.nc.n/2d.n+1答案:b5.采用拉链法解决冲突的散列表中,查找的平均查找长度( )。
a. 直接与关键字个数有关b. 直接与装填因子 a 有关c. 直接与表的容量有关d. 直接与散列函数有关答案:d6.树型结构最适合用来描述()a.有序的数据元素b.无序的数据元素c.数据元素之间的具有层次关系的数据d.数据元素之间没有关系的数据答案:c7.若二叉树中度为2的结点有15个,度为1的结点有10个_______个叶结点。
()a.25b.10c.16d.41答案:c度0的结点比度2的结点多18.若深度为6的完全二叉树的第6层有3个叶结点,则该二叉树一共有______个结点。
(a.32b.33c.34d.25答案:c9.若某完全二叉树的深度为h,则该完全二叉树中至少有______个结点。
()a.2h )b.2h-1c.2h-2d.2h-1+1答案:c10.在非空二叉树的中序遍历序列中,二叉树的根结点的左边应该( )a.只有左子树上的所有结点b.只有左子树上的部分结点c.只有右子树上的所有结点d.只有右子树上的部分结点答案:a11( )a.对应于一组权值构造出的哈夫曼树一般不是唯一的b.哈夫曼树具有最小带权路径长度c.哈夫曼树中没有度为1的结点d.哈夫曼树中除了度为1的结点外,还有度为2的结点和叶结点答案:d12.数据结构是一门研究计算机中(a. 数值运算b.非数值运算c.集合d.非集合答案:b13.数据结构的定义为(k,r),其中k是的集合。
计算机二级经典题目
计算机二级经典题目下面的138道题目,在二级考试中命中率极高。
一、选择题(1) 下面叙述正确的是(C)A. 算法的执行效率与数据的存储结构无关B. 算法的空间复杂度是指算法程序中指令(或语句)的条数C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止D. 以上三种描述都不对(2) 以下数据结构中不属于线性数据结构的是(C)A. 队列B. 线性表C. 二叉树D. 栈(3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得A. 8B. 16C. 32D. 15(4) 下面描述中,符合结构化程序设计风格的是(A)A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B. 模块只有一个入口,可以有多个出口C. 注重提高程序的执行效率D. 不使用goto语句(5) 下面概念中,不属于面向对象方法的是 (D) 注:P55-58A. 对象B. 继承C. 类D. 过程调用(6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)A. 可行性分析B. 需求分析C. 详细设计D. 程序编码(7) 在软件开发中,下面任务不属于设计阶段的是(D)A. 数据结构设计B. 给出系统模块结构C. 定义模块算法D. 定义需求并建立系统模型(8) 数据库系统的核心是(B)A. 数据模型B. 数据库管理系统C. 软件工具D. 数据库(9) 下列叙述中正确的是(C)A.数据库是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致(10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A) 注:P108A. 内模式B. 外模式C. 概念模式D. 逻辑模式(11) 算法的时间复杂度是指(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数(12) 算法的空间复杂度是指(D)A. 算法程序的长度B. 算法程序中的指令条数C. 算法程序所占的存储空间D. 算法执行过程中所需要的存储空间(13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出A. 349B. 350C. 255D. 351(14) 结构化程序设计主要强调的是(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性(15) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D) 注:即第一个阶段A. 概要设计B. 详细设计C. 可行性分析D. 需求分析(16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
江南大学现代远程教育第二阶段测试卷
考试科目:《数据结构》第五章至第七章(总分100分)时间:90分钟______________学习中心(教学点)批次:层次:
专业:学号:号:
:得分:
一、选择题(每题3分,共30分)
1、将一个A[1..100,1..100]的三对角矩阵,按行优先存入一维数组B[1..298]中,则A中的元素A[66,65]在数组B中的位置K=()。
A、195 B、196 C、197 D、198
2、广义表(a,(b,(),c))的深度为()。
A、1 B、2 C、3 D、4
3、下列叙述中错误的是()。
A、树的度与该树中结点的度的最大值相等
B、二叉树就是度为2的有序树
C、有5个叶子结点的二叉树中必有4个度为2的结点
D、满二叉树一定是完全二叉树
4、一棵二叉树中第6层上最多有()个结点。
A、2B、31C、32D、64
5、由树转换而得的二叉树,根结点()。
A、没有左子树B、没有右子树C、左右子树都有D、视树的形态而定
6、一棵高为k的二叉树最少有()个结点。
A、k-1 B、k C、k+1 D、2k-1 E、2k-1
7、含n个顶点的有向图最多有()条弧。
A、n B、n(n-1) C、n(n+1) D、n2
8、设对下图从顶点a出发进行深度优先遍历,则()是可能得到的遍历序列。
A、acfgdeb B、abcdefg C、acdgbef D、abefgcd
9、设图G的邻接矩阵A=
⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎣
⎡
1
1
1
1
,则图G中共有()个顶点。
A、1 B、3 C、4 D、9
10、具有n个顶点的有向强连通图最少有()条弧。
A、n-1 B、n C、n(n-1) D、n(n-1)/2
二、(10分)
试将下图中的树转化为二叉树。
三、(10分)
试写出对如下无向图从顶点A出发进行广度优先遍历可能得到的所有遍历序列。
四、(15分)
设有向网如下,试用迪杰斯特拉算法求从顶点A出发到其余各顶点的最短路径。
五、(15分)
一棵深度为H的满k叉树有如下性质:第H层上的结点都是叶子结点,其余各层上每个结点都有k棵非空子树。
若按层次顺序从1开始对全部结点编号,则:
⑴第i层上有多少个结点?
⑵编号为p的结点的第i个孩子结点(若存在)的编号是多少?
⑶编号为p的结点的双亲结点(若存在)的编号是多少?
六、(20分)
试设计算法,对以邻接矩阵存储的无向图进行深度优先遍历。
答案
一、选择题
1、A
2、C
3、B
4、C
5、B
6、B
7、B
8、A
9、B
10、B
二、试将下图中的树转化为二叉树。
答:
三、试写出对如下无向图从顶点A出发进行广度优先遍历可能得到的所有遍历序列。
答:
ABCEGHFD
ABCEHGFD
ACBGHEDF
ACBHGEDF
四、设有向网如下,试用迪杰斯特拉算法求从顶点A出发到其余各顶点的最短路径。
答:
A / / / 0 /
B ∞∞10 ACDB 1 8 ACDEB
C 2 AC / AC / AC 2 / AC
D 7 AD 5 ACD / ACD 3 / ACD
E ∞∞ 6 ACDE 4 / ACDE
F ∞ 6 ACF 6 ACF 5 6 ACF
G ∞∞13 ACDG 6 13 ACDG
D PATH D PATH D PATH
五、一棵深度为H的满k叉树有如下性质:第H层上的结点都是叶子结点,其余各层上每个结点
都有k棵非空子树。
若按层次顺序从1开始对全部结点编号,则: ⑴第i层上有多少个结点?
⑵编号为p的结点的第i个孩子结点(若存在)的编号是多少? ⑶编号为p的结点的双亲结点(若存在)的编号是多少?
答:
⑴第1层有1个结点,第i 层结点数=第i-1层结点数*k (2≤i ≤H )=1
-i k
个
⑵当根结点以及前面的p-1个结点的孩子都编了号之后,才开始为结点p 的孩子编号。
结点p 的第i 个孩子的编号为(1+(p-1)*k)+i。
⑶若p=1,则为根结点,无双亲,否则可设双亲结点编号为s,由⑵可知结点s的孩子结点的编号围为(s-1)*k+2~(s-1)*k+k+1,即
k
k p s k p 2
1-+≤
≤-,又由s为整数,可得⎥⎦
⎥
⎢⎣⎢-+=k k p s 2。
六、试设计算法,对以邻接矩阵存储的无向图进行深度优先遍历。
答:
int depth(BiTree t){ if (!t) return 0; if(t->lchild)//有左子树
if (t->rchild){ //左、右子树均有 hl=depth(t->lchild); //求左子树高度 hr=depth(t->rchild); //求右子树高度 return hl>hr?hl+1:hr+1; }
else //只有左子树
return depth(t->lchild)+1;
else //无左子树
return depth(t->rchild)+1;
//有右子树,则返回右子树高度加1
//无右子树,即右子树高度为0,则返回1 }//depth。