大工18秋《数据结构》在线作业123标准答案
大工18秋《数据库原理》补考在线作业1

一、单选题(50分)1.下列不属于数据库管理系统管理数据的特点的是()。
A.数据结构化B.数据共享性高C.实现并发操作D.数据不可恢复性正确答案:D2.下列不属于实体间对应关系的是()。
A.一对一联系B.一对多联系C.多对一联系D.多对多联系正确答案:C3.下列不属于集合运算符的是()。
A.并运算符B.差运算符C.与运算符D.广义笛卡尔积正确答案:C4.()是约束外码取值的规则。
A.实体完整性B.结构完整性C.参照完整性D.用户定义完整性正确答案:C5.下列属于SQL语言中的数据查询的动词的是()。
A.selectB.insertC.createD.grant6.CHECK是指下列哪个完整性约束()。
A.主码约束B.指定默认值C.参照完整性约束D.限制取值范围7.确定集合这个查询条件所使用的谓词是()。
A.IN或者NOT INB.LIKE或者NOT LIKEC.ANDD.BETWEEN AND8.()是最常用的连接查询。
A.内连接查询B.外连接查询C.交叉连接查询D.并列连接查询9.动词REVOKE属于SQL语言的()。
A.数据查询B.数据操纵C.数据定义D.数据控制10.下列集函数表示统计列值平均值的是()。
A.COUNT(*)B.COUNT(列名)C.SUM(列名)D.AVG(列名)二、判断题(50分)11.文件系统管理数据阶段,数据有了内部结构。
T.对F.错12.E-R方法是描述信息模型最常用的方法。
T.对F.错13.模式是数据库的物理结构。
T.对F.错14.比较运算符是用来辅助专门的关系运算符进行操作。
T.对F.错15.如果关系模式R的每一个属性都是不可再分的数据项,则称关系模式R满足第一范式。
T.对F.错16.连接有两种类型:非等值连接和等值连接。
T.对F.错17.在关系模型中实体与实体间的联系用关系表示。
T.对18.数据删除不属于数据更新。
T.对F.错19.绝大部分数据库管理系统将数据库存储在大容量的外部存储器上。
数据结构习题和答案及解析

数据结构习题和答案及解析数据结构是计算机科学中非常重要的一个领域,它关注数据的存储、组织和管理方式。
在学习数据结构的过程中,遇到习题是必不可少的,通过解答这些习题可以更好地理解和掌握数据结构的概念和应用。
以下是一些常见的数据结构习题及其答案和解析,希望可以帮助读者更好地学习和理解数据结构。
习题一:栈的应用题目描述:设计一个栈,使其具有获取栈中最小元素的操作。
解答及解析:可以通过两个栈来实现,一个栈用于存储数据,另一个栈用于存储当前最小元素。
在入栈时,如果新的元素比当前最小元素小,则将新元素同时入栈到数据栈和最小栈;在出栈时,如果当前出栈元素与最小栈的栈顶元素相同,则同时出栈。
这样,最小栈的栈顶元素始终为当前栈的最小元素。
习题二:队列的应用题目描述:设计一个队列,使其具有获取队列中最大元素的操作。
解答及解析:可以通过两个队列来实现,一个队列用于存储数据,另一个队列用于存储当前最大元素。
在入队时,如果新的元素比当前最大元素大,则将新元素同时入队到数据队列和最大队列;在出队时,如果当前出队元素与最大队列的队首元素相同,则同时出队。
这样,最大队列的队首元素始终为当前队列的最大元素。
习题三:链表的操作题目描述:给定一个链表,删除链表中倒数第n个节点,并返回链表的头节点。
解答及解析:使用双指针法来解决该问题。
首先让一个指针从链表的头节点向前移动n+1步,然后再让另一个指针从链表的头节点开始移动。
这样两个指针之间的间隔为n,当第一个指针到达链表末尾时,第二个指针指向的节点就是倒数第n个节点的前一个节点。
接着,将第二个指针指向的节点的next指针指向下下个节点,完成删除操作。
习题四:树的遍历题目描述:给定一个二叉树,按照中序遍历的顺序返回其节点值的集合。
解答及解析:采用递归的方式进行中序遍历,先遍历左子树,然后访问根节点,最后遍历右子树。
对于任意一个节点,递归遍历其左子树,将节点值添加到集合中。
然后访问该节点,并将节点值添加到集合中。
18秋福师《数据结构概论》在线作业一

(单选题) 1: 设给定权值总数有n 个,其哈夫曼树的结点总数为( )A: 不确定B: 2nC: 2n+1D: 2n-1正确答案:(单选题) 2: 下列排序算法中,()算法可能会出现下面情况:在最后一趟开始之前,所有元素都不在其最终的位置上。
A: 堆排序B: 冒泡排序C: 快速排序D: 插入排序正确答案:(单选题) 3: 已知广义表L=((x,y,z),a,(u,t,w)),从L表中取出原子项t的运算是()。
A: head(tail(tail(L)))B: tail(head(head(tail(L))))C: head(tail(head(tail(L))))D: head(tail(head(tail(tail(L)))))正确答案:(单选题) 4: 线性表(a1,a2,…,an)以链接方式存储时,访问第i位置元素的时间复杂性为()A: O(i)B: O(1)C: O(n)D: O(i-1)正确答案:(单选题) 5: 动态存储管理系统中,通常可有()种不同的分配策略。
A: 1B: 2C: 3D: 4正确答案:(单选题) 6: 下面给出的四种排序方法中,排序过程中的比较次数与排序方法无关的是。
( )A: 选择排序法B: 插入排序法C: 快速排序法D: 堆积排序法正确答案:(单选题) 7: 串的长度是指()A: 串中所含不同字母的个数B: 串中所含字符的个数C: 串中所含不同字符的个数D: 串中所含非空格字符的个数正确答案:(单选题) 8: 栈在()中应用。
A: 递归调用B: 子程序调用C: 表达式求值D: A,B,C正确答案:(单选题) 9: 就平均性能而言,目前最好的内部排序方法是()排序法。
A: 冒泡B: 希尔插入C: 交换D: 快速正确答案:(单选题) 10: 下述文件中适合于磁带存储的是()。
A: 顺序文件B: 索引文件C: 散列文件D: 多关键字文件正确答案:(单选题) 11: 关系数据库中,实现实体之间的联系是通过表与表之间的?A: 公共索引B: 公共存储C: 公共元组D: 公共属性正确答案:(单选题) 12: 下列表达式中结果不是日期型的是?A: CTOD("2000/10/01")B: {^99/10/01}+365C: VAL("2000/10/01")D: DATE()正确答案:(单选题) 13: 一个算法应该是()。
数据结构习题参考答案

数据结构习题参考答案一、栈和队列1. 栈是一种具有后进先出(Last In First Out)特性的线性数据结构。
常用方法:- push(x): 将元素x压入栈顶;- pop(): 弹出栈顶元素;- top(): 返回栈顶元素;- isEmpty(): 判断栈是否为空;例题解答:(1)题目描述:使用栈实现队列的功能。
解答:使用两个栈,一个用于入队操作,一个用于出队操作。
入队操作:直接将元素压入入队栈中;出队操作:如果出队栈为空,则将入队栈的元素逐个弹出并压入出队栈,此时出队栈的栈顶元素即为要弹出的元素。
复杂度分析:入队操作的时间复杂度为O(1),出队操作的平均时间复杂度为O(1)。
(2)题目描述:判断括号序列是否合法,即括号是否完全匹配。
解答:使用栈来处理括号序列,遇到左括号则入栈,遇到右括号则与栈顶元素进行匹配,如果匹配成功则继续处理剩余字符,如果不匹配则判定为非法序列。
算法步骤:- 初始化一个空栈;- 从左到右遍历括号序列,对于每个字符执行以下操作:- 如果是左括号,则将其入栈;- 如果是右括号,则将其与栈顶元素进行匹配:- 如果栈为空,则判定为非法序列;- 如果栈顶元素与当前字符匹配,则将栈顶元素出栈,继续处理剩余字符;- 如果栈顶元素与当前字符不匹配,则判定为非法序列。
- 遍历结束后,如果栈为空,则括号序列合法;否则,括号序列非法。
复杂度分析:时间复杂度为O(n),其中n为括号序列的长度。
2. 队列是一种具有先进先出(First In First Out)特性的线性数据结构。
常用方法:- enqueue(x): 将元素x入队;- dequeue(): 出队并返回队首元素;- getFront(): 返回队首元素;- isEmpty(): 判断队列是否为空;例题解答:(1)题目描述:使用队列实现栈的功能。
解答:使用两个队列,一个用于入栈操作,一个用于出栈操作。
入栈操作:直接将元素入队入栈队列中;出栈操作:如果出栈队列为空,则将入栈队列的元素逐个出队并入队出栈队列,此时出栈队列的队首元素即为要出栈的元素。
大工19秋《数据结构》在线作业1参考答案

大工19秋《数据结构》在线作业1试卷总分:100 得分:100一、单选题(共10 道试题,共50 分)1.线性表采用顺序存储结构时,其地址( )。
A.部分地址必须是连续的B.连续与否均可以C.必须是连续的D.一定是不连续的答案:C2.队列操作的原则是( )。
A.后进先出B.只能插入C.只能删除D.先进先出答案:D3.下述哪一条是顺序存储结构的优点( )。
A.插入运算方便B.存储密度大C.可方便地用于各种逻辑结构的存储表示D.删除运算方便答案:B4.若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用( )存储方式最节省时间。
A.顺序表B.带头结点的双循环链表C.双链表D.单循环链表答案:A5.链表不具有的特点是( )。
A.插入、删除不需要移动元素B.所需空间与线性长度成正比C.可随机访问任一元素D.不必事先估计存储空间答案:C6.一个栈的输入序列为123…n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是( )。
A.不确定B.n-i+1C.n-iD.i答案:B7.设有三个元素X,Y,Z顺序进栈(进的过程中允许出栈),下列得不到的出栈排列是( )。
A.ZYXB.ZXYC.YZXD.XYZ答案:B8.一个递归算法必须包括( )。
A.递归部分B.迭代部分C.终止条件和递归部分D.终止条件和迭代部分答案:C9.设计一个判别表达式中左右括号是否配对出现的算法,采用( )数据结构最佳。
A.队列B.线性表的顺序存储结构C.线性表的链式存储结构D.栈答案:D10.对稀疏矩阵进行压缩存储目的是( )。
A.降低运算的时间复杂度B.节省存储空间C.便于进行矩阵运算D.便于输入和输出答案:B二、判断题(共10 道试题,共50 分)11.数据是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。
答案:正确12.算法的有穷性是指一个算法必须总是(对任何合法的输入)在执行有穷步之后结束,且每一步都可在有穷时间内完成。
数据结构第1-3章作业参考答案

数据结构第1~3章作业参考答案【1.4】【解法一】⑴抽象数据类型复数:ADT Complex{数据对象:D={ci|ci∈R, i=1,2, 其中R为实数集}数据关系:R={<c1,c2>| ci∈D, i=1,2, 其中c1为复数实部, c2为复数虚部}基本操作:InitComplex (&C,v1,v2)操作结果:构造一个复数C,元素c1, c2分别被赋以参数v1, v2的值。
DestroyComplex(&C)初始条件:复数C已存在。
操作结果:销毁复数C。
GetReal(C, &e)初始条件:复数C已存在。
操作结果:用e返回复数C实部的值。
Get Imaginary(C, &e)初始条件:复数C已存在。
操作结果:用e返回复数C虚部的值。
SetReal(&C, e)初始条件:复数C已存在。
操作结果:用e更新复数C实部的值。
Set Imaginary(&C, e)初始条件:复数C已存在。
操作结果:用e更新复数C虚部的值。
AdditionComplex (&C, C1, C2)初始条件:复数C1,C2已存在。
操作结果:复数C1与复数C2相加,用复数C返回其和。
SubstractComplex(&C, C1, C2)初始条件:复数C1,C2已存在。
操作结果:复数C1减去复数C2,用复数C返回其差。
MultipleComplex(&C, C1, C2 )初始条件:复数C1,C2已存在。
操作结果:复数C1与复数C2相乘,用复数C返回其积。
DividedComplex(&C, C1, C2)初始条件:复数C1,C2已存在,且C2≠0。
操作结果:复数C1除以复数C2,用复数C返回其商。
ModulusComplex(C, &e)初始条件:复数C已存在。
操作结果:求复数C的模,用e返回。
ConjugateComplex(&C, C1)初始条件:复数C1已存在。
《数据结构》各章课后作业答案

《数据结构》各章课后作业答案 第一章 绪论课后作业答案1. 简述线性结构与非线性结构的不同点。
答:线性结构反映结点间的逻辑关系是一对一的,非线性结构反映结点间的逻辑关系是多对多的。
2.分析下面各程序段的时间复杂度(每小题5分,共20分)解:1.第一个for 循环执行n+1次,第二个for 循环执行n(m+1)次,A[i][j]=0;语句执行n*m 次,此程序段总的执行次数为n+1+n*(m+1)+n*m=2nm+2n+1次。
故时间复杂度为O(n*m)。
2.算法的时间复杂度是由嵌套最深层语句的执行次数决定的,本程序段嵌套最深层语句为:s+=B[i][j];它的执行次数为n 2,所以本程序段的时间复杂度是O(n 2)。
3. 该算法的基本操作是语句x++, 其语句频度为:1111n n i i j --==∑∑=10()n i n i -=-∑=(1)2n n - 所以本程序段的时间复杂度是O(n 2)。
4.设语句执行m 次,则有3m≤n ⇒m ≤log 3n所以本程序段的时间复杂度为O(log 3n)。
第二章 线性表课后作业答案1. 填空题。
(1)在顺序表中插入或删除一个元素,需要平均移动表中一半元素,具体移动的元素个数与表长和该元素在表中的位置有关。
(2)线性表中结点的集合是 有限 的,结点间的关系是 一对一的。
(2)s=0;for (i=0; i<n; i++)for(j=0; j<n; j++) s+=B[i][j]; sum=s; 答:O (n 2)(1) for (i=0; i<n; i++) for (j=0; j<m; j++) A[i][j]=0;(3) x=0;for(i=1; i<n; i++)for (j=1; j<=n-i; j++)x++;(4)i=1;while(i<=n)i=i*3;(3)向一个长度为n的向量的第i个元素(1≤i≤n+1)之前插入一个元素时,需向后移动 n-i+1 个元素。
数据结构习题参考答案

数据结构习题参考答案第一章答案一、填空题1.数据元素,数据项2. O(1),O(n),O(log 2n),O(n 2)3.线性结构,非线性结构,顺序结构,链式结构4.无,一,无,一5.前驱,一,无,任意6.任意7. O(n 1/2)8.O(1)<o(2n<="") 第二章答案一、填空题1. n/2,(n-1)/2分析:当在顺序线性表中的第i (1<=i<=n+1)个位置之前插入一个新元素时,从第i 个元素起向后的n+1-i 个元素均要向后移动一个位置。
因此在等概率情况下,插入操作中元素的平均移动次数为∑+==-++=112)1(11)(n i ni n n n f ;当在顺序线性表中删除第i (1<=i<=n )个位置上的元素,从第i+1个元素起向后的n-i 个元素均要向前移动一个位置。
因此在等概率情况下,删除操作中元素的平均移动次数为∑=-=-= n i n i n n n f 121)(1)(。
2.向后3.向前4.指针域5.一定,不一定6. O(n)7. O(n)8.消除空表的特殊性,统一表示和处理空表和非空表的情形,从而简化插入和删除等操作的某些细节。
9.前驱,后继10.O(n)二、填空题1. (1)2. (1)3. (4)4. (2)5. (2)6. (4)7. (4)8. (1)9. (4)10.(1)11.(2)12.(3)第三章参考答案一、填空题1.线性,任何,栈顶,队尾,队头2.先进后出(FILO ),队尾,队头,先进先出(FIFO )3. top==0,top==m4. 235415.前一个位置,所在位置,m-1分析:在顺序循环队列中约定头指针front 和尾指针rear 所指向的位置,是牺牲掉一个存储单元而方便表示队列空和队列满的条件,因此顺序循环队列中实际可用的存储单元只有m-1个。
6. (rear+1)%m==front ,rear==front7. O(1)8.返回地址,返回地址二、选择题1.(3) 2.(3) 3.(3) 4. (2)5. (2)6. (3)7. (1)8. (4)因为:顺序循环队列中的元素个数=??<+-≥-front rear m front rear front rear front rear ,整理合并可写成(rear-front+m)%m 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C.二路归并排序
D.堆排序
答案:D
下列排序方法中,哪一个是稳定的排序方法?()
A.直接选择排序
B.二分法插入排序
C.希尔排序
D.快速排序
答案:B
下面给出的四种排序方法中,排序过程中的比较次数与排序方法无关的是()。
B.可随机访问任一元素
C.不必事先估计存储空间
D.所需空间与线性长度成正比
答案:B
6一个栈的输入序列为123…n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是()。
A.不确定
B.n-i+1
C.i
D.n-i
答案:B
7设有三个元素X,Y,Z顺序进栈(进的过程中允许出栈),下列得不到的出栈排列是()。
A.CBEFDA
B.FEDCBA
C.CBEDFA
D.不定
答案:A
完全二叉树一定存在度为1的结点。
T.对
F.错
答案:B
二叉树的遍历结果不是唯一的.
T.对
F.错
答案:A
一个树的叶结点,在前序遍历和后序遍历下,皆以相同的相对位置出现。
T.对
F.错
答案:A
完全二叉树中,若一个结点没有左孩子,则它必是树叶。
T.对
大工18秋《数据结构》在线作业123标准答案
1线性表采用顺序存储结构时,其地址()。
A.必须是连续的
B.部分地址必须是连续的
C.一定是不连续的
D.连续与否均可以
答案:A
2队列操作的原则是()。
A.先进先出
B.后进先出
C.只能插入
D.只能删除
答案:A
3下述哪一条是顺序存储结构的优点()。
A.存储密度大
C.串中所含不同字符的个数
D.串中所含非空格字符的个数
答案:B
树的后根遍历序列等同于该树对应的二叉树的()。
A.先序序列
B.中序序列
C.后序序列
D.以上都不对
答案:B
在下列存储形式中,哪一个不是树的存储形式?()
A.双亲表示法
B.孩子链表表示法
C.孩子兄弟表示法
D.顺序存储表示法
答案:D
已知一棵二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历的结果为()。
答案:B
散列表的地址区间为0-17,散列函数为H(K)=Kmod17。采用线性探测法处理冲突,并将关键字序列26,25,72,38,8,18,59依次存储到散列表中。元素59存放在散列表中的地址是()。
A.8
B.9
C.10
D.11
答案:D
下面给出的四种排序法中()排序法是不稳定性排序法。
A.直接插入排序
A.XYZ
B.YZX
C.ZXY
D.ZYX
答案:C
8一个递归算法必须包括()。
A.递归部分
B.终止条件和递归部分
C.迭代部分
D.终止条件和迭代部分
答案:B
9设计一个判别表达式中左右括号是否配对出现的算法,采用()数据结构最佳。
A.线性表的顺序存储结构
B.队列
C.线性表的链式存储结构D.栈Fra bibliotek答案:D
10对稀疏矩阵进行压缩存储目的是()。
A.便于进行矩阵运算
B.便于输入和输出
C.节省存储空间
D.降低运算的时间复杂度
答案:C
11数据是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。
T.对
F.错
答案:A
12算法的有穷性是指一个算法必须总是(对任何合法的输入)在执行有穷步之后结束,且每一步都可在有穷时间内完成。
B.插入运算方便
C.删除运算方便
D.可方便地用于各种逻辑结构的存储表示
答案:A
4若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用()存储方式最节省时间。
A.顺序表
B.双链表
C.带头结点的双循环链表
D.单循环链表
答案:A
5链表不具有的特点是()。
A.插入、删除不需要移动元素
F.错
答案:A
在n个结点的无向图中,若边数大于n-1,则该图必是连通图。
T.对
F.错
答案:B
强连通图的各顶点间均可达。
T.对
F.错
答案:A
用邻接矩阵法存储一个图所需的存储单元数目与图的边数有关。
T.对
F.错
答案:B
有向图的邻接矩阵是对称的。
T.对
F.错
答案:B
无向图的邻接矩阵一定是对称矩阵,有向图的邻接矩阵一定是非对称矩阵。
顺序存储方法,它不要求逻辑上相邻的结点在物理位置上亦相邻,结点之间的逻辑关系是由附加的指针字段表示的。
T.对
F.错
答案:B
链式存储方法,它是把逻辑上相邻的结点存储在物理位置相邻的存储单元里,结点的逻辑关系由存储单元的邻接关系来体现。
T.对
F.错
答案:B大工18秋《数据结构》在线作业2
若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是()。
D.nlogn
答案:A
n个结点的完全有向图含有边的数目()。
A.n*n
B.n(n+1)
C.n/2
D.n*(n-l)
答案:D
设有两个串p和q,其中q是p的子串,求q在p中首次出现的位置的算法称为()。
A.求子串
B.联接
C.模式匹配
D.求串长
答案:C
串的长度是指()。
A.串中所含不同字母的个数
B.串中所含字符的个数
T.对
F.错
答案:A
13算法的确定性是指算法中每一条指令必须有确切的含义,确保不会产生二义性。并且,在任何条件下,算法只有唯一的一条执行路径,即对于相同的输入只能得出相同的输出。
T.对
F.错
答案:A
一个算法是可行的,即算法中描述的操作都是可以通过已实现的基本运算执行有限次来实现的。
T.对
F.错
答案:A
栈是限定仅在表尾进行插入或删除操作的线性表。
T.对
F.错
答案:A
队列是只允许在表的一端进行插入,而在另一端删除元素的线性表。
T.对
F.错
答案:A
线性表的主要存储结构有顺序存储结构和链式存储结构两种。
T.对
F.错
答案:A
算法的时间复杂度不仅仅依赖于问题的规模,也取决于输入实例的初始状态。
T.对
F.错
答案:A
A.9
B.11
C.15
D.不确定
答案:B
具有10个叶结点的二叉树中有()个度为2的结点。
A.8
B.9
C.10
D.11
答案:B
设无向图的顶点个数为n,则该图最多有()条边。
A.n-1
B.n(n-1)/2
C.n(n+1)/2
D.0
答案:B
一个n个顶点的连通无向图,其边的个数至少为()。
A.n-1
B.n
C.n+1
T.对
F.错
答案:B
有n个顶点的无向图,采用邻接矩阵表示,图中的边数等于邻接矩阵中非零元素之和的一半。
T.对
F.错
答案:A大工18秋《数据结构》在线作业3
对线性表进行二分查找时,要求线性表必须()。
A.以顺序方式存储
B.以顺序方式存储,且数据元素有序
C.以链接方式存储
D.以链接方式存储,且数据元素有序