数据结构与算法5单元练习题及答案.docx
- 文档编号:903653
- 上传时间:2022-10-13
- 格式:DOCX
- 页数:32
- 大小:142.03KB
数据结构与算法5单元练习题及答案.docx
《数据结构与算法5单元练习题及答案.docx》由会员分享,可在线阅读,更多相关《数据结构与算法5单元练习题及答案.docx(32页珍藏版)》请在冰豆网上搜索。
数据结构与算法5单元练习题及答案
单元练习1
一.判断题(下列各题,正确的请在前面的括号内打√;错误的打╳)
(√)
(1)数据的逻辑结构与数据元素本身的内容和形式无关。
(√)
(2)一个数据结构是由一个逻辑结构和这个逻辑结构上的一个基本运算集构成的整体。
(ㄨ)(3)数据元素是数据的最小单位。
(ㄨ)(4)数据的逻辑结构和数据的存储结构是相同的。
(ㄨ)(5)程序和算法原则上没有区别,所以在讨论数据结构时可以通用。
(√)(6)从逻辑关系上讲,数据结构主要分为线性结构和非线性结构两类。
(√)(7)数据的存储结构是数据的逻辑结构的存储映像。
(√)(8)数据的物理结构是指数据在计算机内实际的存储形式。
(ㄨ)(9)数据的逻辑结构是依赖于计算机的。
(√)(10)算法是对解题方法和步骤的描述。
二.填空题
(1)数据有逻辑结构和存储结构两种结构。
(2)数据逻辑结构除了集合以外,还包括:
线性结构、树形结构和图形结构。
(3)数据结构按逻辑结构可分为两大类,它们是线性结构和非线性结构。
(4)树形结构和图形结构合称为非线性结构。
(5)在树形结构中,除了树根结点以外,其余每个结点只有1个前趋结点。
(6)在图形结构中,每个结点的前趋结点数和后续结点数可以任意多个。
(7)数据的存储结构又叫物理结构。
(8)数据的存储结构形式包括:
顺序存储、链式存储、索引存储和散列存储。
(9)线性结构中的元素之间存在一对一的关系。
(10)树形结构结构中的元素之间存在一对多的关系,
(11)图形结构的元素之间存在多对多的关系。
(12)数据结构主要研究数据的逻辑结构、存储结构和算法(或运算)三个方面的内容。
(13)数据结构被定义为(D,R),其中D是数据的有限集合,R是D上的关系的有限集合。
(14)算法是一个有穷指令的集合。
(15)算法效率的度量可以分为事先估算法和事后统计法。
(16)一个算法的时间复杂性是算法输入规模的函数。
(17)算法的空间复杂度是指该算法所耗费的存储空间,它是该算法求解问题规模n的函数。
(18)若一个算法中的语句频度之和为T(n)=6n+3nlog2n,则算法的时间复杂度为O(nlog2n)。
(19)若一个算法中的语句频度之和为T(n)=3n+nlog2n+n2,则算法的时间复杂度为O(n2)。
(20)数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象,以及它们之间的关系和运算的学科。
三.选择题
(1)数据结构通常是研究数据的(A)及它们之间的相互联系。
A.存储结构和逻辑结构B.存储和抽象C.联系和抽象D.联系与逻辑
(2)在逻辑上可以把数据结构分成:
(C)。
A.动态结构和静态结构B.紧凑结构和非紧凑结构
C.线性结构和非线性结构D.内部结构和外部结构
(3)数据在计算机存储器内表示时,物理地址和逻辑地址相同并且是连续的,称之为(C)。
A.存储结构B.逻辑结构C.顺序存储结构D.链式存储结构
(4)非线性结构中的每个结点(D)。
A.无直接前趋结点
B.无直接后继结点
C.只有一个直接前趋结点和一个直接后继结点
D.可能有多个直接前趋结点和多个直接后继结点
(5)链式存储的存储结构所占存储空间(A)。
A.分两部分,一部分存放结点的值,另一部分存放表示结点间关系的指针
B.只有一部分,存放结点的值
C.只有一部分,存储表示结点间关系的指针
D.分两部分,一部分存放结点的值,另一部分存放结点所占单元素
(6)算法的计算量大小称为算法的(C)。
A.现实性B.难度C.时间复杂性D.效率
(7)数据的基本单位是(B)。
A.数据结构B.数据元素C.数据项D.文件
(8)每个结点只含有一个数据元素,所有存储结点相继存放在一个连续的存储区里,这种存储结构称为(A)结构。
A.顺序存储B.链式存储C.索引存储D.散列存储
(9)每一个存储结点不仅含有一个数据元素,还包含一组指针,该存储方式是(B)存储方式。
A.顺序B.链式C.索引D.散列
(10)以下任何两个结点之间都没有逻辑关系的是(D)。
A.图形结构B.线性结构C.树形结构D.集合
(11)在数据结构中,与所使用的计算机无关的是(C)。
A.物理结构B.存储结构C.逻辑结构D.逻辑和存储结构
(12)下列四种基本逻辑结构中,数据元素之间关系最弱的是(A)。
A.集合B.线性结构C.树形结构D.图形结构
(13)与数据元素本身的形式、内容、相对位置、个数无关的是数据的(A)。
A.逻辑结构B.存储结构C.逻辑实现D.存储实现
(14)每一个存储结点只含有一个数据元素,存储结点存放在连续的存储空间,另外有一组指明结点存储位置的表,该存储方式是(C)存储方式。
A.顺序B.链式C.索引D.散列
(15)算法能正确的实现预定功能的特性称为算法的(A)。
A.正确性B.易读性C.健壮性D.高效性
(16)算法在发生非法操作时可以作出处理的特性称为算法的(C)。
A.正确性B.易读性C.健壮性D.高效性
(17)下列时间复杂度中最坏的是(D)。
A.O
(1)B.O(n)C.O(log2n)D.O(n2)
(18)下列算法的时间复杂度是(D)。
for(i=0;i for(j=0;i c[i][j]=i+j; A.O (1)B.O(n)C.O(log2n)D.O(n2) (19)算法分析的两个主要方面是(A)。 A.空间复杂性和时间复杂性B.正确性和简明性 C.可读性和文档性D.数据复杂性和程序复杂性 (20)计算机算法必须具备输入、输出和(C)。 A.计算方法B.排序方法 C.解决问题的有限运算步骤D.程序设计方法 四.分析下面各程序段的时间复杂度 (1)for(i=0;i for(j=0;j A[i][j] 解: O(n*m) (2)s=0; for(i=0;i for(j=0;j s+=B[i][j]; sum=s; 解: O(n2) (3)T=A; A=B; B=T; 解: O (1) (4)s1(intn) {intp=1,s=0; for(i=1;i<=n;i++) {p*=i;s+=p;} return(s); } O(n) (5)s2(intn) x=0; y=0; for(k=1;k<=n;k++) x++; for(i=1;i<=n;i++) for(j=1;j<=n;j++) y++; 解: O(n2) 五.根据二元组关系,画出对应逻辑图形的草图,指出它们属于何种数据结构。 1.A=(D,R),其中: D={a,b,c,d,e}, R={} 解: ab cde 属于集合 2.B=(D,R),其中: D={a,b,c,d,e,f},R={r} 解: 属于线性结构。 3.根据二元组关系画出逻辑图形,并指出它们属于何种数据结构。 F=(D,R),其中: D={50,25,64,57,82,36,75,55}, R={<50,25>,<50,64>,<25,36>,<64,57>, <64,82>,<57,55>,<57,75>} 解: 属于树结构 4.根据二元组关系画出逻辑图形,并指出它们属于何种数据结构。 C=(D,R),其中: D={1,2,3,4,5,6}, R={(1,2),(2,3),(2,4),(3,4),(3,5),(3,6),(4,5),(4,6)} (园括号表示结点之间关系是有向的) 解: 属于图结构 5.根据二元组关系画出逻辑图形,并指出它们属于何种数据结构。 E=(D,R),其中: D={a,b,c,d,e,f,g,h}, R={ 解: 属于树结构。 模拟考题 1.根据二元组关系画出逻辑图形,并指出它们属于何种数据结构。 A=(D,R),其中: D={1,2,3,4,5,6}, R={(1,2),(1,6),(2,3),(2,4), (3,4),(3,5),(3,6),(4,5),(5,6)} 解: 属于图结构 2.根据二元组关系画出逻辑图形,并指出它们属于何种数据结构。 B=(D,R),其中: D={40,30,20,60,50,80,70,10}, R={<30,20>,<30,60>,<20,40>,<60,50>, <60,70>,<60,80>,<70,10>} 解: 属于树结构 3.根据二元组关系画出逻辑图形,并指出它们属于何种数据结构。 C=(D,R),其中: D={1,2,3,4,5,6}, R={(1,2),(2,3),(2,4),(3,4), (3,5),(3,6),(4,5),(4,6)} 解: 属于图结构 4.根据二元组关系画出逻辑图形,并指出它们属于何种数据结构。 E=(D,R),其中: D={a,b,c,d,e,f,g,h}, R={ 解: 属于树结构 单元练习2 一.判断题(下列各题,正确的请在前面的括号内打√;错误的打╳) (×) (1)线性表的链式存储结构优于顺序存储。 (×) (2)链表的每个结点都恰好包含一个指针域。 (√)(3)在线性表的链式存储结构中,逻辑上相邻的两个元素在物理位置上并不一定紧邻。 (×)(4)顺序存储方式的优点是存储密度大,插入、删除效率高。 (×)(5)线性链表的删除算法简单,因为当删除链中某个结点后,计算机会自动地将后续的各个单元向前移动。 (×)(6)顺序表的每个结点只能是一个简单类型,而链表的每个结点可以是一个复杂类型。 (√)(7)线性表链式存储的特点是可以用一组任意的存储单元存储表中的数据元素。 (√)(8)线性表采用顺序存储,必须占用一片连续的存储单元。 (×)(9)顺序表结构适宜于进行顺序存取,而链表适宜于进行随机存取。 (ㄨ)(10)插入和删除操作是数据结构中最基本的两种操作,所以这两种操作在数组中也经常使用。 二.填空题 (1)顺序表中逻辑上相邻的元素在物理位置上必须相连。 (2)线性表中结点的集合是有限的,结点间的关系是一对一关系。 (3)顺序表相对于链表的优点是: 节省存储和随机存取。 (4)链表相对于顺序表的优点是: 插入、删除方便。 (5)采用顺序存储结构的线性表叫顺序表。 (6)顺序表中访问任意一个结点的时间复杂度均为O (1)。 (7)链表相对于顺序表的优点是插入、删除方便;缺点是存储密度小。 (8)在双链表中要删除已知结点*P,其时间复杂度为O (1)。 (9)在单链表中要在已知结点*P之前插入一个新结点,需找到*P的直接前趋结点的地址,其查找的时间复杂度为O(n)。 (10)单链表中需知道头指针才能遍历整个链表。 (11)性表中第一个结点没有直接前趋,称为开始结点。 (1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 算法 单元 练习题 答案