浙江工商大学数据结构期末复习题2.pdf
《浙江工商大学数据结构期末复习题2.pdf》由会员分享,可在线阅读,更多相关《浙江工商大学数据结构期末复习题2.pdf(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数 据 结 构 习 题 集一、选择题一、选择题.在一个长度为在一个长度为 n n 的顺序表中,向第的顺序表中,向第i i 个元素个元素(1(1i in+1)n+1)之前插入一个新元素时,需之前插入一个新元素时,需向后移动向后移动B B个元素。个元素。A.n-1B.n-i+1C.n-i-1D.i.在一个具有 n 个单元的顺序栈中,假定以地址低端作为栈底,以 top 作为栈顶指针,则当做退栈处理时,top 变化为C。A.top 不变.top-nC.toptop-1D.top=top+1.向顺序栈中压入元素时,是A。A.先存入元素,后移动栈顶指针B.先移动栈顶指针,后存入元素.在一个顺序存储的循环队
2、列中,队首指针指向队首元素的A。A.前一个位置B.后一个位置C.队首元素位置D.队尾元素位置.若进栈序列为 1,2,3,4,进栈过程中可以出栈,则C不可能是一个出栈序列。A.3,4,2,1B.2,4,3,1C.1,4,2,3D.3,2,1,4.在具有 n 个单元的顺序存储的循环队列中,假定 front 和 rear 分别为队首指针和队尾指针,则判断队空的条件是C。A.front=rear+1B.front+1=rearC.front=rearD.front=0.在具有 n 个单元的顺序存储的循环队列中,假定 front 和 rear 分别为队首指针和队尾指针,则判断队满的条件是D。A.rear
3、%n=frontB.(rear-1)%n=frontC.(rear-1)%n=rearD.(rear+1)%n=front.从一个具有 n 个节点的单链表中查找其值等于x 结点时,在查找成功的情况下,需平均比较D个结点。.在一个单链表中,已知*q 结点是*p 结点的前驱结点,若在*q 和*p 之间插入*s结点,则执行C。A.s-next=p-next;p-next=s;B.p-next=s-next;s-next=p;C.q-next=s;s-next=p;D.p-next=s;s-next=q;10.向一个栈项指针为 hs 的链栈中插入一个*s 结点时,则执行C。A.hs-next=s;B.
4、s-next=hs-next;hs-next=s;C.s-next=hs;hs=s;D.s-next=hs;hs=hs-next;11.在一个链队列中,假定 front 和 rear 分别为队首指针和队尾指针,则进行插入*s 结点的操作时应执行B。A.front-next=s;front=s;B.rear-next=s;rear=s;C.front=front-next;D.front=rear-next;12.线性表是A。A.一个有限序列,可以为空B.一个有限序列,不能为空C.一个无限序列,可以为空D.一个无限序列,不能为空13.对顺序存储的线性表,设其长度为 n,在任何位置上插入或删除操作
5、都是等概率的,删除一个元素时大约要移动表中的C个元素。A.n+1B.n-1C.(n-1)/2D.n14.线性表采用链式存储时,其地址D。A.必须是连续的B.部分地址必须是连续的C.一定是不连续的D.连续与否均可以15.设单链表中指针 p 指着结点(数据域为 m),指针f 指着将要插入的新结点(数据域为x),当 x 插在结点 m 之后时,只要先修改B后修改 p-link=f 即可。A.f-link=p;B.f-link=p-link;C.p-link=f-link;D.f=nil;16.在双向链表存储结构中,删除p 所指的结点时需修改指针B。A.(p-rlink)-rlink)-link=p;p
6、-rlink=(p-rlink)-rlink;B.(p-llink)-rlink=p-rlink;(p-rlink)-llink=p-llink;C.p-llink=(p-llink)-llink;(p-llink)-llink)-rlink=p;D.(p-llink)-llink)-rlink=p;p-llink=(p-llink)-llink;17.在双向链表存储结构中,删除 p 所指的结点的前趋结点(若存在)时需修改指针A。A.(p-llink)-llink)-rlink=p;p-llink=(p-llink)-llink;B.(p-rlink)-rlink)-llink=p;p-rli
7、nk=(p-rlink)-rlink;C.(p-llink)-rlink=p-rlink;(p-rlink)-llink=p-llink;D.p-llink=(p-llink)-llink;(p-llink)-llink)-rlink=p;18.根据线性表的链式存储结构,每个结点所含指针的个数,链表分为单链表和B。A.循环链表B.多重链表C.普通链表D.无头结点链表19.在数据结构中,与所使用的计算机无关的数据叫C结构。A.存储B.物理C.逻辑D.物理和存储20.二分法查找A存储结构。A.只适用于顺序B.只适用于链式C.既适用于顺序也适用于链式D.既不适合于顺序也不适合于链式21.在线性表的链
8、式存储结构中,逻辑上相邻的元素在物理位置上B。A.一定相邻B.不一定相邻C.有时相邻23.假定在一棵二叉树中,双分支结点数为15 个,单分支结点数为32 个,则叶子结点数为B。A.15B.16C.17D.4724.假定一棵二叉树的结点数为18 个,则它的最小高度B。性质 2A.4B.5C.6D.1825.在一棵二叉树中第五层上的结点数最多为C。性质 1A.8B.15C.16D.3226.在一棵具有五层的满二叉树中,结点总数为A。性质 3A.31B.32C.33D.1627.已知 8 个数据元素为(34、76、45、18、26、54、92、65),按照依次插入结点的方法生成一棵二叉排序树后,最后
9、两层上的结点总数为B。不理解?A.1B.2C.3D.428.由分别带权为 9、2、5、7 的四个叶子结点构造一棵哈夫曼树,该树的带权路径长度为C。A.23B.37C.44D.46 为什么不是 46?29.在树中除根结点外,其余结点分成 m(m0)个A的集合 T1,T2,T3.Tm,每个集合又都是树,此时结点T 称为 Ti 的父结点,Ti 称为 T 的子结点(1im)。A.互不相交B.可以相交C.叶结点可以相交D.树枝结点可以相交30.下面答案D是查找二叉树(又称二叉排序树)。A.二叉树中的每个结点的两棵子树的高度差的绝对值不大于B.二叉树中的每个结点的两棵子树的高度差等于C.二叉树中的每个结点
10、的两棵子树是有序的D.二叉树中的每个结点的关键字大于其左子树(如果存在)所有结点的关键字值,且小于其右子树(如果存在)所有结点的关键字值。31.如果结点 A 有三个兄弟,而且B 是 A 的双亲,则 B 的出度是B。A.3B.4C.5D.132.一个深度为 L 的满 K 叉树有如下性质:第 L 层上的结点都是叶子结点,其余各层上每个结点都有 K 棵非空子树。如果按层次顺序从开始对全部结点编号,编号为n 的有右兄弟的条件是B。A.(n-1)%k=0B.(n-1)%k!=0C.n%k=0D.n%k!=033.在完全二叉树中,当 i 为奇数且不等于时,结点 i 的左兄弟是结点D,否则没有左兄弟。A.2
11、i-1B.i+1C.2i+1D.i-134.某二叉树 T 有 n 个结点,设按某种遍历顺序对T 中的每个结点进行编号,编号值为1,2,n 且有如下性质:T 中任一结点 V,其编号等于左子树上的最小编号减1,而 V 的右子树 的结点中,其最小编号等于V 左子树上结点的最大编号加1。这时按B编号。A.中序遍历序列B.前序遍历序列C.后序遍历序列D.层次遍历序列35.在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的B倍。A.1/2B.1C.2D.436.对于一个具有 n 个顶点和 e 条边的无向图,若采用邻接表表示,则表头向量的大小为A。A.nB.n+1C.n-1D.n+e37.具有 n
12、个顶点的无向完全图,边的总数为D条。A.n-1B.nC.n+1D.n*(n-1)/238.设图 G 有 n 个顶点和 e 条边,当 G 是非孤立顶点的连通图时有 2e=n,故可推得深度优先搜索的时间复杂度为A。A.O(e)B.O(n)C.O(ne)D.O(n+e)39.最小代价生成树D。A.是唯一的B.不是唯一的 C.唯一性不确定D.唯一性与原因的边的权数有关40.在无向图 G 的邻接矩阵 A 中,若 Ai,j等于 1,则 Aj,i等于C。A.i+jB.i-jC.1D.041.图的深度优先或广度优先遍历的空间复杂性均为A。(访问标志位数组空间)A.O(n)B.O(e)C.O(n-e)D.O(n
13、+e)42.已知一个有序表为(12、18、24、35、47、50、62、83、90、115、134),当二分查找值为 90 的元素时,B次比较后查找成功;当二分查找值为 47 的元素时,D次比较后查找成功。A.1B.2C.3D.443.散列函数有一个共同性质,即函数值应当以D取其值域的每个值。A.最大概率B.最小概率C.平均概率D.同等概率44.设散列地址空间为 0m1,k 为关键字,用 p 去除 k,将所得的余数作为 k 的散列地址,即 H(k)k%p。为了减少发生冲突的频率,一般取p 为D。A.小于 m 的最大奇数B.小于 m 的最大偶数C.mD.小于 m 的最大素数45.目前以比较为基础
14、的内部排序时间复杂度 T(n)的范围是A;其比较次数与待 排序的记录的初始排列状态无关的是B。A.O(log2 n)O(n)O(lon2 n)O(n2)O(nlog2 n)O(n2)O(n)O(n2)O(n)O(nlog2 n)B.插入排序先用二分法查找,找到后插入排序快速排序冒泡排序46.设关键字序列为:3,7,6,9,8,1,4,5,2。进行排序的最小交换次数是A。A.6B.7C.8D.2047.在归并排序过程中,需归并的趟数为C。A.nB.nC.log2n 向上取整D.log2n 向下取整48.一组记录排序码为(46、79、56、38、40、84),则利用堆排序的方法建立的初始堆为B。A
15、.(79、46、56、38、40、80)B.(84、79、56、38、40、46)C.(84、79、56、46、40、38)D.(84、56、79、40、46、38)49.一组记录的关键码为(46、79、56、38、40、84),则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为C。A.(38、40、46、56、79、84)B.(40、38、46、79、56、84)C.(40、38、46、56、79、84)D.(40、38、46、84、56、79)50.在平均情况下快速排序的时间复杂性为C,空间复杂性为B;在最坏情况下(如初始记录已有序),快速排序的时间复杂性为D,空间复杂性为A。A
16、.O(n)B.O(log2 n)C.O(nlog2 n)D.O(n2)选择题参考答案:.B.C.A.A.C.C.D.D.C10.C11.B12.A13.C14.D15.B16.B17.A18.B19.C20.A21.B22.D23.B24.B25.C26.A27.B28.C29.A30.D31.B32.B33.D34.B35.B36.A37.D38.A39.D40.C41.A42.B,D 43.D44.D45.A:B:46.A采用选择排序对给定的关键字序列进行排序,只需次。47.C48.B49.C50.C B D A二、填空题1.在线性结构中第一结点1 无前驱结点,其余每个结点有且只有2 一个
17、前驱结点;最后一个结点3 无后继结点,其余每个结点有且只有4 一个后继结点。2.在树型结构中,树根结点没有1 前趋结点,其余每个结点有且仅有2 一个前驱结点;树叶结点没有3 后继结点,其余每个结点的4 后继结点数不受限制。3.一个数据结构用二元组表示时,它包括1 数据元素的集合 K 和 K 上2二元关系的集合 R。4.对于一个二维数组A1.m,1.n,若按行序为主序存储,则任一元素 Ai,j的相对地址(即偏移地址)为1(i-1)*n+j-1。5.对于顺序存储的线性表,当随机插入或删除一个元素时,约需平均移动表长1 一半的元素。6.对于长度为 n 的顺序表,插入或删除元素的时间复杂性为1 O(n
18、);对于顺序栈或队列,插入或删除元素的时间复杂性为2 O(1)。7.在具有 n 个单元、顺序存储的循环队列中,队满时共有1 n-1个元素。8.从顺序表中删除第 i 个元素时,首先把第 i 个元素赋给1 变参或函数名带回,接着从2 链接指针开始向后的所有元素均3 前移一个位置,最后使线性表的长度4 减 1。9.在线性表的顺序存储中,元素之间的逻辑关系是通过1 相邻位置决定的;在线性表的链接存储中,元素之间的逻辑关系是通过2 链接指针决定的。10.一个单链表中删除*p 结点时,应执行如下操作:(1)q=p-next;(2)p-data=p-next-data;(3)p-next=1 q-next
19、或 p-next-next;(4)free(q);11.若要在一个单链表中的*p 结点之前插入一个*s 结点时,可执行如下操作:(1)s-next=1 p-next;(2)p-next=s;(3)t=p-data;(4)p-data=2 s-data;(5)s-data=3 t;12.对于线性表的顺序存储,需要预先分配好存储空间,若分配太多则容易造成存储空间的1 浪费,若分配太少又容易在算法中造成2 溢出,因此适应于数据量变化不大的情况;对于线性表的链接存储(假定采用动态结点),不需要3 预先分配存储空间,存储器中的整个4 动态存储区都可供使用,分配和回收结点都非常方便,能够有效地利用存储空间
20、,在算法中不必考虑5 溢出的发生,因此适应数据量变化较大的情况。13.无论对于顺序存储还是链接存储的栈和队列来说,进行插入或删除运算的时间复杂性均相同,则为1 O(1)。0020*14.一个稀疏矩阵为 3000,则对应的三元组线性表为00-15(1,3,2),(2,1,3),(3,3,-1),(3,4,5)。000015.对于一棵具有 n 个结点的树,则该树中所有结点的度之和为n-1。16.在一棵二叉树中,度为0 的结点的个数为n0,度为 2 的结点的个数为 n2,则:n0=n2+1。17.在二叉树的顺序存储中,对于下标为5 的结点,它的双亲结点的下标为1 2,若它存在左孩子,则左孩子结点的下
21、标为2 10,若它存在右孩子,则右孩子结点的下标为3 11。18.假定一棵二叉树的广义表表示为A(B(,D),C(E(G),F),则该树的深度为 14,度为 0 的结点数为 23,度为 1 的结点数为3 2,度为 2 的结点数为42;C 结点是 A 结点的5 右孩子,E 结点是 C 结点的6 左 孩子。19.在一棵二叉排序树中,按中序遍历得到的结点序列是一个有序序列。20.由分别带权为 3,9,6,2,5 的共五个叶子结点构成一棵哈夫曼树,则带权路径长度为55。21.假定在二叉树的链接存储中,每个结点的结构为leftdataright,其中data 为值域,left 和 right 分别为链接
22、左、右孩子结点的指针域,请在下面中序遍历算法中画有横线的地方填写合适的语句。void inorder(bt);if bt!=nil(1)1 inorder(bt-left);(2)2 printf(bt-data);(3)3 inorder(bt-right);22.在图 G 的邻接表表示中,每个顶点邻接表中所含的结点数,对于无向图来说等于该顶点的1 度数,对于有向图来说等于该顶点的2 出度数。23.假定一个图具有 n 个顶点和 e 条边,则采用邻接矩阵表示的空间复杂性为1O(n2),采用邻接表表示的空间复杂性为2 O(n+e)。24.已知一个无向图的邻接矩阵如下所示,则从顶点 A 出发按深度
23、优先搜索遍历得到的顶点序列为1 ABCDFE,按广度优先搜索遍历得到的顶点序列为2ABCEFD。ABCDEF011010A101011B110100C001001D110001E010110F25.已知一个图如下所示,在该图的最小生成树中,各边的权值之和为20。101552812326.假定在有序表 A1.20上进行二分查找,则比较一次查找成功的结点数为 11,比较两次查找成功的结点数为 22,比较三次查找成功的结点数为 34,比较四次查找成功结点数为 48,比较五次查找成功的结点数为 55,平均查找长度为 63.7。27.在索引查找或分块查找中,首先查找1 索引表,然后再查找相应的2子表或块
24、,整个索引查找的平均查找长度等于查找索引表的平均查找长度与查找相应子表的平均查找长度之3 和。28.在散列存储中,装填因子的值越大,存取元素时发生冲突的可能性就 1 越大,当的值越小,存取元素时发生冲突的可能性就2 越小。29.给定线性表(18,25,63,50,42,32,90),用散列方式存储,若选用h(K)=K%9 作为散列函数,则元素18 的同义词元素共有12个,元素25 的同义词元素共有 20 个,元素50 的同义词元素共有31个。30.在对一组记录(54,38,96,23,15,72,60,45,83)进行直接选择排序时,第四次选择和交换后,未排序记录(即无序表)为(54,72,6
25、0,96,83)。31.在对一组记录(54,38,96,23,15,72,60,45,38)进行冒泡排序时,第一趟需进行相邻记录交换的次数为17,在整个冒泡排序过程中共需进行25趟后才能完成。32.在归并排序中,若待排序记录的个数为20,则共需要进行15趟归并,在第三趟归并中,是把长度为24的有序表归并为长度为38的有序表。33.在直接插入和直接选择排序中,若初始数据基本正序,则选用1 直接插入排序,若初始数据基本反序,则选用2 直接选择排序。34.在堆排序、快速排序和归并排序中,若只从节省空间考虑,则应首先选取1 堆排序方法,其次选取2 快速排序方法,最后选取3 归并排序方法;若只从排序结果
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 浙江 工商大学 数据结构 期末 复习题
限制150内