ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:460.61KB ,
资源ID:8035125      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8035125.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据结构考试题库.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据结构考试题库.docx

1、数据结构考试题库绪论一、填空题1.数据的逻辑结构被分为集合、(线性结构)、(树形结构)和(图状结构)四种。2.物理结构是数据结构在计算机中的表示,又称为(存储结构)。3.数据元素的逻辑结构包括( 线性)、(树)和图状结构3种类 型,树形结构和图状结构合称为(非线性结构)。4.(数据元素)是数据的基本单位,(数据项)是数据不可分割的最小单位。5.线性结构中元素之间存在(一个对一个)关系,树形结构中元素之间 存在(一个对多个)关系,图状结构中元素之间存在(多个对多个)关系。 ?6.数据结构是一门研究非数值计算的程序设计问题中:计算机的(数据元素)以及它们之间的(关系)和(运筹)等的学科。7.算法的

2、五个重要特性为有穷性、确定性、(输入)、(输出)和(可行性)。二、选择题1.数据的不可分割的基本单位是(D)。A.元素 B.结点 C.数据类型 D.数据项 *2.线性表的逻辑顺序与存储顺序总是一致的,这种说法(B)。A.正确 B.不正确 C.不确定 D.无法选择 3.线性结构是指数据元素之间存在一种(D)。A.一对多关系 B.多对多关系 C.多对一关系 D.一对一关系 4.在数据结构中,从逻辑上可以把数据结构分成(A)。A.动态结构和静态结构 B.紧凑结构和非紧凑结构 C.线性结构和非线性结构 D.内部结构和外部结构5.线性表若采用链式存储结构时,要求内存中可用存储单元的地址( D)。A.必须

3、是连续的 B.部分地址必须是连续的 C.一定是不连续的 D.连续不连续都可以三、简答题1.算法的特性是什么。答:有穷性 确定性 可行性 有0或多个输入 有1或多个输出 线性结构一、填空题1.在一个长度为n的线性表中删除第i个元素(1in)时, 需向前移动(n-i)个元素。2.从循环队列中删除一个元素时,其操作是(先移动队首指针,后取出元素)。3.在线性表的单链接存储中,若一个元素所在结点的地址为p,则其后继结点的地址为(p-next)。 4.在一个单链表中指针p所指向结点的后面插入一个指针q所指向的结点时,首先把(p-next)的值赋给q-next,然后(q-date)的值赋给p-next。5

4、.从一个栈删除元素时,首先取出(栈顶元素),然后再使(栈顶指针)减1。6.子串的定位操作通常称做串的(模式匹配)。7.设目标T=abccdcdccbaa,模式P=cdcc则第(六)次匹配成功。8. 顺序栈 S 中 , 出 栈操作时 要执行的 语句序列 中有 S-top(-);进栈操作时要执行的语句序列中有S-top(+)。 9.顺序表中逻辑上相邻元素的物理位置(一定)紧邻;单链表中 逻辑上相邻元素的物理位置(不一定)紧邻。10.在(循环)链表中,从任何一结点出发都能访问到表中的所有结点。11.栈和队列均是(运算受限)的线性表,栈的特点是(先进后出 后进先出);队列的特点是(先进先出 后进后出)

5、。12.通常,在程序中使用的串可分为串常量和串变量;而串按存储方式又可分为(定长顺序存储)和(堆分配存储)。 13.循环队列头指针front指向队头元素,队尾指针rear指向队 尾元素后的一个空闲元素,队列的最大空间为Queuelen。在循环队列中 , 队空标志为(front=rear), 队满标志为((rear+1)%max=front)。 当rear=front时,队列长度为(rear-front),当rearnext=null)。17.在一个单链表中删除指针p所指向结点的后继结点时,需要把(p-next-next)值赋给p-next指针域。 18.一个顺序循环队列存于aM中,假定队首和队

6、尾指针分别 为front和rear,则判断队空的条件为( a.front=a.rear),判断队满的条件为((a.rear+1)%M=a.front)。19.在双向链表中,每个结点有两个指针域,一个指向其(前驱) 结点,另一个指向其(后继)结点,最后一个结点的(后继结点)指针域为空。*20. 若 D=(a , (b , c) , e , a) , 则 Head( D )=( ) ,Tail( D )=( ),Head(Tail( D )=( )。(本人不会)21.在循环链表中,每个结点有(一个)个指针域,指向其(后继)结点,最后一个结点的指针域(为空)。*22. 若 S=(a , (b , c

7、) , e , d) , 则 Head( S )=( ) , Tail( S )=( ),Head(Tail( S )=( )。(本人不会)二、选择题1.在一个单链表中,若q所指结点是p所指结点的前驱结点,若在q与p之间插入一个s所指的结点,则执行(A)。A.s-link=p-link; p-link=s; B.p-link=s; s-link=q;C.p-link=s-link; s-link=p; D.q-link=s; s-link=p; 2.对于顺序存储的队列,存储空间大小为n,头指针为F,尾指针为R。若在逻辑上看一个环,则队列中元素的个数(A)。A.R-F B.n+R-F C.(R-

8、F+1)mod n D.(n+R-F)mod n3.如下陈述中正确的是(A)。A.串是一种特殊的线性表 B.串的长度必须大于零C.串中元素只能是字母 D.空串就是空白串4.若让元素1,2,3依次进栈,则出栈次序不可能出现(C)的情况。A.3,2,1 B.2,1,3 C.3,1,2 D.1,3,25.判定一个队列QU(最多元素为m0)为空的条件是(C)。 A.QU-rear-QU-front=m0 B.QU-rear-QU-front-1=m0 C.QU-front=QU-rear D.QU-front=QU-rear+16.设目标串S=abcdef,模式串p=de,则第(C)次匹配成功。A.1

9、 B.2 C.4 D.57.设字符串s1=ABCDEFG,S2=PQRST,T,sub1,sub2为空串 。 则运算 s=Concat(T , SubString(sub1 , s1 , 2 , SubLength(s2),SubString(sub2,s1,SubLength(s2),2) 后的串T值为( D)。A.BCDEF B.BCDEFG C.BCPQRST D.BCDEFEF8.一个顺序线性表第一个元素的存储地址是100,每个元素的 长度为2,则第5个元素的地址是( B)。A.100 B.108 C.110 D.1209.非空的循环单链表head的尾结点(由p所指向)满足(C)。A.

10、p-next=NULL B.p=NULLC.p-next=head D.p=head10.在一个链队中,假设f和r分别为队首和队尾指针,则删除一个结点的运算时(C)。A.r=f-next; B.r=r-next;C.f=f-next; D.f=r-next; 11.在一个长度为n的线性表中,删除值为x的元素时,需要比 较元素和移动元素的总次数为(C)。A.(n+1)/2 B.n/2 C.n D.n+112.在一个单链表中,若要在p所指向的结点之后插入一个新结 点,则需要相继修改(B)个指针域的值。A.1 B.2 C.3 D.413.线性结构中,每个结点(C)。A.无直接前驱 B.只有一个直接前

11、驱和个数不受限制的直接后继 C.只有一个直接前驱和后继 D.有个数不受限制的直接前驱和后继 14.队列是限定在(D)进行操作的线性表。A.中间 B.队头 C.队尾 D.端点15.设串S1=“ABCDEFG”,S2=“PQRST”,函数StrCat(x,y)返回x和y串的连接串,函数StrSub(S,i,j)返回串S的从序号i 的字符开始的j个字符组成的子串,StrLen(S)返回串S的长度, 则StrCat(StrSub(S1,2,StrLen(S2),StrSub(S1,StrLen (S2),2)的结果串是(D)。A.BCDEF B.BCDEFG C.BCPQRST D.BCDEFEF16

12、.学生成绩表是一种(C)结构。A.图形 B.树形 C.线性 D.集合 17.在一个链队中,假设f和r分别为队首和队尾指针,则插入s 所指结点的运算时(C)。A.f-next=s; f=s; B.r-next=s; r=s; C.s-next=r; r=s; D.s-next=f; f=s;18.向顺序表中的i位置处插入元素,下面哪项能够准确的表明i的位置是合法的。(D)A.il-length+1 B.i=1C.i=l-length+1 D.1=ilength+1 19.设线性链表中结点的结构为(data,next),已知指针q所 指结点是指针p所指结点的直接后继,若在*q和*p之间插入结点*s

13、,则应执行(A)操作。A.s-next=p-next; p-next=s; B.q-next=s; s-next=p;C.p-next=s-next; s-next=p; D.p-next=s; s-next=q;20.一个栈的入栈序列为a,b,c,d,e,则出栈序列不可能的是(C)。A.edcba B.dcbae C.dceab D.abcde 21.如果以链表作为栈的存储结构,则出栈操作时(B)。A.必须判别栈是否满 B.必须判别栈是否为空C.必须判别栈元素类型 D.可不做任何判断 22.设有两个串p和q,求q在p中首次出现的位置的运算称为 (B)。A.连接 B.模式匹配 C.求子串 D.

14、求串长23.p指向线性链表中的某一结点,则在线性链表的表尾插入结点S的语句序列是(A)。A.while(p-next!=NULL) p=p-next; p-next=s; s-next=N ULL;B.while(p!=NULL) p=p-next; p-next=s; s-next=NULL;C.while(p-next!=NULL) p=p-next; s-next=p;p-next=NULL;D.while(p!=NULL) p=p-next-next;-next;p-next=s;s-next=p24.向顺序栈中压入新元素时,应当(A)。A.先移动栈顶指针,再存入元素 B.先存入元素,

15、再移动栈顶指针C.先后次序无关紧要 D.同时进行25.假定一个顺序队列的队首和队尾指针分别为f和r,则判断队空的条件为(D)。f+1=r B.r+1=f C.f=0 D.f=r26.栈的插入和删除操作在(A)进行。A.栈顶 B.栈底 C.任意位置 D.指定位置27.栈和队列的共同点是(C)。A.都是先进后出 B.都是先进先出C.只允许在端点处插入和删除元素 D.没有共同点 28.若6行8列的数组以列序为主序顺序存储,基地址为1000, 每个元素占2个存储单元,则第5行第3列的元素(假定无第0行第0列)的地址是(B)。A.1086 B.1032 C.1068 D.答案A,B,C都不对29.设有5

16、0行的二维数组A5060,其元素长度为2字节,按 行优先顺序存储,基地址为100,则元素A1825的存储地址 为(D)。A.1850 B.2188 C.1950 D.2310三、论述题1.写出线性表的插入算法、删除算法。解:太麻烦 略略略 *2.画出主串为ababcabcacbab,子串为abc的模式匹配 过程。解:四、算法设计题1.在带头结点的单链线性表L中第i个位置之前插入新的元素e。略2.在带头结点的单链线性表L中,删除第i个元素,并由e返回 其值。略树形结构一、填空题1.赫夫曼树,又称最优树,是一类(带权路径)长度最短的树。2.在一棵二叉树中,第5层上的结点数最多为(16)个。3.一棵

17、高度为 5 的二叉树中最少含有(5)个结点,最多含 有(31)个结点。4.若一棵二叉树中有8个度为2的结点,则它有(9)个叶子。5.一棵深度为6的满二叉树有(31)个非终端结点。6.树中结点A的(子树数)称为结点A的度。7.对一棵二叉排序树进行中序遍历时,得到的结点序列是一个 (升序序列)。 8.在树型结构中,根结点没有前驱结点,其余每个结点有且仅有(一)个前驱结点;叶子结点(没有)后继结点,其余每个结点都可以有(一或多个)个后继结点。 9.在最优二叉树中没有度为1的结点,则一棵有n个叶子结点的最优二叉树中共有(2n-1)个结点。10.深度为4(设根的层数为1)的二叉树至少有(4)个结点,至多

18、有(15)个结点,第i层上至多有(2n-1)个结点。 11.深度为6(设根的层数为1)的二叉树至少有(6)个结点,至多有(63)个结点,第4层上至多有(8)个结点。A.n B. N+1 C.n-1 D.不确定注:1:B 2:D 3:A 4:B 5.下面(A)是对的。A.哈夫曼树中结点的度只可能是0和2。 B.二叉树的顺序存储中,是以先序遍历存储结点的。C.完全二叉树实际上就是满二叉树。 D.一棵二叉树第i层的最大结点数为2i-1。 6.将含100个结点的完全二叉树从根这一层开始,每层上从左到右依次对结点编号,根结点的编号为1。编号为49的结点X的右孩子编号为(B)。A.98 B.99 C.24

19、 D.无法确定7.先序为A,B,C且后序为C,B,A的二叉树共有(B)种。A.3 B.4 C.5 D.68.在一棵度为3的树中,度为3的结点个数为2,度为2的结点个数为1,则度为0的结点个数为(C)。A.4 B.5 C.6 D.7 9.由权值分别为11,8,6,2,5的叶子结点生成一棵哈夫曼树, 它的带权路径长度为(B)。A.24 B.71 C.48 D.5310. 一个具有 767 个结点的完全二叉树, 其叶子结点个数为 (B)。A.382 B.384 C.385 D.38611. 在一棵具有 35 个结点的完全二叉树中, 该树的深度为(A)。A.6 B.7 C.5 D.8 12.由三个结点

20、构成的二叉树,共有(B)种不同的结构。A.3 B.4 C.5 D.613.深度为k的二叉树至多有(2K-1)个结点(k1)。A.2k B.2k-1 C.2k-1 D.2k三、简答题1.已知一棵二叉树的先序遍历和中序遍历,则该二叉树的后序遍历是什么? 先序遍历:A,B,C,D,E,F,G,H,I,J 中序遍历:C,B,A,E,F,D,I,H,J,G 解:后序遍历:C,B,F,E,I,J,H,G,D,A2.如下图的森林转化为二叉树。解:此题没法写 略略略3. 已 知 某 二 叉 树 的 前 序 序 列 为 EBADCFHGI , 中 序 序 列 为ABCDEFGHI,请给出二叉树且写出二叉树的后序

21、序列。解:二叉树略 后序序列:A,C,D,B,G,I,H,F,E 4.试用权集合6,4,8,3,7,5,10,8,2,1,11,构造 哈夫曼(Huffman)树。 (1)画出这棵哈夫曼树;(2)分别计算该哈夫曼树的路径长度和带权路径长度。解:(1)略 (2)路径长度为:1x2+2x4+3x8+4x3+5x2=60; 带权路径长度为:3x(6+7+8+8+10+11)+4x(3+4+5)+5x(1+2)=2135.试按表(10,18,9,2,20,5,6,15,19,25)中元素的排 列次序,将所有元素插入一棵初始为空的二叉排序树中,使之 仍是一棵二叉排序树。(1)试画出插入完成之后的二叉排序树

22、; (2)若查找元素2,它将依次与二叉排序树中哪些元素比较大小? (3)对该树进行中序遍历,试写出中序遍历序列。解:(1)略 (2)10,9,2 (3)2,5,6,9,10,15,18,19,20,25 6.已知一棵二叉树的顺序存储表示如下,其中0表示空,请分别写出二叉的先序、中序、后序遍历序列。1234567891011121320846515300001018035解:先序序列:20,8,5,15,10,18,46,30,35 中序序列:5,8,10,15,18,20,30,35,46 后序序列:5,10,18,15,8,35,30,46,207.将如下图的一般树转化为二叉树。8.将下图中

23、的二叉树转换成森林。四、论述题1.由分别带权为3,12,9,2,5,7的叶子结点构造一棵哈夫曼树,并计算该树的带权路径长度。 解:带权路径长度为:91图状结构一、填空题1.若一个图的顶点集为a,b,c,d,e,f,边集为(a,b), (a,c),(b,c),(d,e),则该图含有(3)个连通分量。 2.具有10个顶点的无向图,边的总数最多为(45)。3.图的广度优先搜索遍历类似于树的(按层次)遍历的过程。4.在无向图G的邻接矩阵A中,若Aij等于1,则Aji等于(1)。5.图的(深度)优先搜索遍历算法是一种递归算法,图的(广度) 优先搜索遍历算法需要使用队列二、选择题1.一个有n个顶点的无向图

24、最多有(C)条边。A.n B.n(n-1) C.n(n-1)/2 D.2n2. 在一个无向图中, 所有顶点的度数之和等于所有边数的 (B)倍。A.3 B.2 C.1 D.1/23.在一个具有n个顶点的无向图中,若具有e条边,则所有顶点的度数之为(D) 。A.n B.e C.n+e D.2e三、简答题1.给出如下图所示的无向图G的邻接矩阵存储结构。(答案略)2.画出下图的邻接表存储结构。(答案略)3.给出下图从A点出发的深度优先遍历和广度优先遍历的顶点序列。解:深度优先遍历:AECDB 广度优先遍历:AEBDC5.给出从V1点出发的深度优先遍历和广度优先遍历的顶点序列。解:深度优先遍历;v1 v

25、2 v3 v4 v5 v6 v7 v8 v9广度优先遍历;v1 v2 v3 v4 v7 v5 v6 v8 v9四、论述题1.写出下面带权有向图的的关键路径。解:(1)1-2-5-8-92.设将整数1、2、3、4依次进栈,请回答下述问题:1)若入、出栈顺序为Push(1),Pop(),Push(2),Push(3), Pop(),Pop(),Push(4),Pop(),则出栈的数字序列是什么? 2)能否得到出栈序列1432和1423?并说明为什么不能得到或者如何得到?解:(1):1324(2):可以得到1432 不能得到1423 得到1432的过程为:Push(1),pop(),push(2),

26、push(3),push(4),pop(),pop(),pop(), 不能得到1423 无法执行此操作3.求出下图的最小生成树。(答案略) 4.求出下图的最小生成树。(答案略)查找一、简答题1.关键字集合19,01,23,14,55,68,11,82,36,哈希函数为:H(key)=key MOD 9构建哈希表,采用开放定址法解决冲突。(答案略)2.关键字集合19,14,23,01,68,20,84,27,55,11,10,79,哈希函数为:H(key)=key MOD 12 构建哈希表,采用开放定址法解决冲突。(答案略)排序一、填空题1.快速排序的最坏情况,其待排序的初始排列是(逆序)。2.

27、假定一组记录的排序码为(46,79,56,38,40,80,36,40,75,66,84,24),对其进行归并排序的过程中,第3趟归并后,结果为(36,38,40,40,46,56,79,8024,66,75,84)。二、选择题1.用某种排序方法对关键字序列(25,84,21,47,15,27,68,35,20)进行排序时,序列的变化情况如下:20,15,21,25,47,27,68,35,8415,20,21,25,35,27,47,68,8415,20,21,25,27,35,47,68,84则所采用的排序方法是(D)。A.选择排序 B.希尔排序 C.归并排序 D.快速排序 三、简答题1.

28、已知一组记录的排序码为(46,79,56,52,38,40,80,31,95,24),写出对其进行快速排序的每一趟划分结果。解:过程如下:一趟:24,31,40,38,46,52,80,56,75,79二趟:24,31,40,38,46,52,80,56,95,79三趟:24,31,40,38,46,52,79,56,80,95四趟:24,31,38,40,46,52,56,79,80,952.一组记录的关键码为(46,79,56,38,40,84),利用希尔排序方法进行排序。解:如下所示一趟:38,40,56,46,79,84二趟:38,40,56,46,79,84三趟:38,40,46,56,79,84 3.一组记录的关键码为(49,38,65,97,76,13,27,4), 利用起泡法进行排序(表示绝对不会考) 4.算法的要求:(1)正确性(2)可读性(3)健壮性(4)效率和低存储量要求 5.算法的特点:(1)有穷性(2)确定性(3)可行性(4)输入(5)输出

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1