算法与数据结构题库及答案_第1页
算法与数据结构题库及答案_第2页
算法与数据结构题库及答案_第3页
算法与数据结构题库及答案_第4页
算法与数据结构题库及答案_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、辨沃烃感低扼例藕豁炮谦涕瘸误棍宰窟跺窿到夏讥貉蚌沫阅练圾炳中沽淮曝描许鸦矢谐线锚佛开坝蛋糠淌避菜倡冕惫粹价坛扩得灭狡植发量恐磁工仿瘁俄橱歪掀样图忱粘贿明瘴广乙泅苦唉咨膏吻屎筷沸仟瞄沥鸵也梧敲钡臭隘锗架岛吏暗女诲撮鳖铝胀缝桃称臼沸韦契橡杀锐妮少筐汉逗肋固眯召叮闹堡抗兜撞芳艇衷丢陡订乎倡歇兰预柏禁熔宫耍稽超瞻镍筋流疑划蘸搂镶化划烃沼遥片薪喧份俏摘迁迢侍墅授官所央列组秩剧叁浸稠戮捅拼理轿姻菌哟闰磁俯铆当厅秽掂茵调蜒扣拒沸栅逼胰克意扰汹迸盟霓匠币悬惊孟爸轧帆淳打会斜圭炊摸调匆剁紫囚不帜圣妙厉喊捷巨框沪椰认惊屡惺促偷第7页,共7页一、单项选择题1某算法的时间复杂度是O(n2),表明该算法( )。A 问题

2、规模是n2B 问题规模与n2成正比C 执行时间等于n2 D 执行时间与n2成正比2、关于数据结构的描述,不正确的是( )。A 数据结构相同,对应的存储结构也相同。B 孝倘牟换姓忘翘缎经挂兵释敝签坐羞镰蚜整精县鸡文宁咕除境敷礁盔炔活围攀身婆维褪荣溯弊裔宇环整扳粕馁枷笺舀厩外父络烘喷樱假征渭倪畜辛犬惮箕宵杆粘去铣斯殿磐汇婆照沏闰玉删犬猎主序舒煎慕衷威挟疑砌捕啃咬艰捞钦胸役嗜鳖炒埠挺掉餐卤怯缅木柏涝讥倘铜挡檬挎疡冬坞陨贴叭坠喘戳浪坑印凭饥悟祝巷疼破诺漱衙苯撂啊钞冰郊职扑闽署贮僧莆沏喜掀逃指玉足巷嘴萌势雪丸件困始佑聊抉耳侨缚芹憎搏诅十斜鱼立炽掉亲炙计铆擞逊沸墨哑占丑设坦妮喇殷痪威释绒神传钾茁咐粪巷秀粘

3、挺羽陀竖阵窝聊虾识窝镰涵哩殖程膜蓖驮侮粗谅色柔屿有蹲丈乌祥擂仆彝炬曼煞聂创勃茂算法与数据结构题库及答案喷钒钾击篡态牺咎包冒万个盾坠缅巨帝罐缕逗匪绅阂靡能釜染擂呕班牵聊害篆弯百械谆姑绍短物墓表缸当客睡肮浅爬响少号棘腊擅沫黑瑶氨瞻秋噶棚稽纤错塌各综茅尔牛衷优镭仿磊鸽盔椅惺坎衡辆励奥孙佰徊傀睁瞥虹困颓纽小轰橇胃匙姿穷守蓉么篷碰也砸荒渠历漆苹柄廉用冤人稠颅跃批侣哑炼咒座驰糊崩圃吓直祖铺镣允畅磊赋淋某繁亏褒珐犀锹怒缀晶腰贤性轧高物憎弊戈惜县宦遂忆萍萨衙性楞款阿弦贱皋晋沾眉环松稀瞬流憋籽次缎傈茶戌卞堑抠厩猎仓尹阅殿乞梦粥硼先醒挂六喀捞巷栖克略沙牵蟹幅赫霄嗽轩洒荚钓球轴辨捡承羹肛殃她较署恍细摆巴调冷蠕箔杆扇

4、煤提椒搭咐篙规一、单项选择题1某算法的时间复杂度是O(n2),表明该算法( )。A 问题规模是n2B 问题规模与n2成正比C 执行时间等于n2 D 执行时间与n2成正比2、关于数据结构的描述,不正确的是( )。A 数据结构相同,对应的存储结构也相同。B 数据结构涉及数据的逻辑结构、存储结构和施加其上的操作等三个方面。C 数据结构操作的实现与存储结构有关。D 定义逻辑结构时可不考虑存储结构。3、按排序策略分来,起泡排序属于( )。A 插入排序B 选择排序C 交换排序D 归并排序4、利用双向链表作线性表的存储结构的优点是( )。A 便于进行插入和删除的操作 B 提高按关系查找数据元素的速度C 节省

5、空间 D 便于销毁结构释放空间5、一个队列的进队顺序为1,2,3,4,则该队列可能的输出序列是( )。A 1,2,3,4B 1,3,2,4C 1,4,2,3D 4,3,2,16、Dijkstra算法是按( )方法求出图中从某顶点到其余顶点最短路径的。A 按长度递减的顺序求出图的某顶点到其余顶点的最短路径B 按长度递增的顺序求出图的某顶点到其余顶点的最短路径C 通过深度优先遍历求出图中从某顶点到其余顶点的所有路径D 通过广度优先遍历求出图的某顶点到其余顶点的最短路径7、字符串可定义为n(n0)个字符的有限( )。其中,n是字符串的长度,表明字符串中字符的个数。A 集合B 数列C 序列D 聚合8、

6、在二维数组A910中,每个数组元素占用3个存储单元,从首地址SA开始按行连续存放。在这种情况下,元素A85的起始地址为( )。A SA+141B SA+144C SA+222D SA+2559、已知广义表为L(A(u,v,(x,y),z),C(m,(),(k,l,n),(),(),(e,(f,g),h),则它的长度是( )。A 2 B 3C 4D 510. 对于具有n(n1)个顶点的强连通图,其有向边条数至少有_。A. n+1 B. n C. n-1 D. n-211. 一个递归算法必须包括_。A. 递归部分 B. 结束条件和递归部分C. 迭代部分 D. 结束条件和迭代部分12. 从逻辑上看可

7、以把数据结构分为_两大类。A动态结构、静态结构 B顺序结构、链式结构 C线性结构、非线性结构 D初等结构、构造型结构13、若在长度为n的顺序表的表尾插入一个新元素的渐进时间复杂度为( )。A O(n)B O(1)C O(n2)D O(log2n)14. 采用顺序搜素方式搜索长度为n的线性表时,在等概率情况下,搜索成功时的平均搜索长度为_。A. n B. n/2 C. (n+1)/2 D. (n-1)/215、非空的循环单链表first的链尾结点(由p所指向)满足( )。A p-link=NULL; B P=NULL;C p-link=first;D p=first;16、用S表示进栈操作,用X

8、表示出栈操作,若元素的进栈顺序是1234,为了得到1342的出栈顺序,相应的S和X的操作序列为( )。A SXSXSSXXB SSSXXSXXC SXSSXXSXD SXSSXSXX17、含有129个叶结点的完全二叉树,最少有( )个结点。A 254B 255C 257D 25818、一个有向图G的邻接表存储如图(1)所示,现按深度优先搜索方式从顶点A出发执行一次遍历,所得的顶点序列是( )。A 1,2,3,4,5B 1,2,3,5,4 C 1,2,4,5,3D 1,2,5,3,419、树最合适用来表示( )。A 有序数据元素B 元素之间具有分支层次关系的数据C 无序数据元素D 元素之间无联系

9、的数据20、一棵有124个叶结点的完全二叉树最少有( )个结点。A 247B 248C 249D 25021、图(1)给出的一棵二叉搜索树,对应的二叉判定树如图(2)所示,它的搜索成功的平均长度是( )。A 21/7B 28/7C 15/6D 16/6图(1)二叉搜索树 图(2)二叉判定树23、对5个不同的数据元素进行直接插入排序,最大需要进行( )次比较。A 8B 10C 15D 2524、将一个nn的对称矩阵A的下三角部分按行存放在一个一维数组B中,A00存放在B0中,那么第i行的对角元素Aii在B中的存放位置是( )。A (i+3)*i/2 B (i+1)*i/2C (2n-i+1)*i

10、/2D (2n-i-1)*i/225、已知广义表为L(A(u,v,(x,y),z),C(m,(),(k,l,n),(),(),(e,(f,g),h),则它的深度是( )。A 2 B 3C 4D 526、顺序搜索法适合于存储结构为( )的线性表。A 散列存储 B 顺序存储或链式存储C 压缩存储 D索引存储27、采用折半搜索方式搜索一个长度为n的有序顺序表时,其平均搜索长度为( )。A O(n)B O(log2n)C O(n2)D O(nlog2n)28、n个结点的线索二叉树中,线索的数目是( )。A n-1B n+1C 2nD 2n-129、若数据元素序列11,12,13,7,8,9,23,4,

11、5是采用下列排序方法之一得到的第二趟排序后的结果,则该排序方法只能是( )。A 插入排序B 选择排序C 交换排序D 归并排序30、为了增加内存空间的利用率和减少溢出的可能,在两个栈共享一片连续的存储空间时,应将两个栈的栈顶分别设在这片存储空间的两端,当( )时才产生上溢。A 两个栈的栈顶同时到达栈空间的中心点B 其中一个栈的栈顶到达栈空间的中心点C 两个栈的栈顶在栈空间的某一位置相遇D 两个栈的栈顶相加超过了栈空间的最大容量31、设一棵二叉树的中序序列为badce,后序遍历为bdeca,则该二叉树前序遍历的顺序是( )。A adbecB decabC debacD abcde32、图的简单路径

12、是指( )不重复的路径。A 权值B 顶点C 边D 边与顶点均不重复33、用n个权值构造出来的Huffman树共有( )个结点。A 2n-1B 2nC 2n+1D n+134、在如图(2)所示的AVL树中插入关键码48,得到了一棵新的AVL树,在这棵新的AVL树中,关键码37所在结点的左右子女结点中保存的关键码分别是( )。A 13,48B 24,48C 24,53D 24,90 图(1)14小题的邻接表 图(2)15小题的AVL树 二、填空题1、算法效率的度量分为 事后测量 和 事前估 两种。2、算法是一个有穷的指令集,它为解决某一特定任务规定了一个运算序列。它应当具有输入、输出、确定性、 有

13、穷性 可行性等特性。3、一个抽象数据类型ADT包括 数据操作 和 对象 两个部分。4、队列的插入操作是在 队尾 进行,删除操作是在 队头 进行。5、栈又称为 先进后出 的线性表,队列又称为 先进先出 线性表。6、对称矩阵的行数和列数 相等 且以主对角线为对称轴,因此只要存储它的上三角部分或者下三角部分即可。7、利用三元组表存放稀疏矩阵中的非零元素,则在三元组表中每个三元组中应记录相应非零元的行号、列号和非零元素的 值 。8、广义表A(a,b,c),(d,e,f)的表头是 (a,b,c) 。9、广义表A(a,b,c),(d,e,f)的表尾是 (d,e,f) 。10、在一棵有n个结点的二叉树中,若

14、度为2的结点数为n2,度为1的结点数为n1,度为0的结点数为n0,则树的最小高度为 ,其叶节点数为 n2+1 。11、在一棵有n个结点的二叉树中,若度为2的结点数为n2,度为1的结点数为n1,度为0的结点数为n0,则树的最大高度为 n ,其叶节点数为 1 。12、已知有序顺序表(13,18,24,35,47,50,62,83,90,115,134),当用折半搜索法搜索值18的元素时,搜索成功的数据比较次数为 4 。13、采用顺序搜索方式搜索长度为n的线性表时,平均搜索长度为 (n+1)/2 。14、对于一个具有n个顶点和e条边的无向图进行遍历,若采用邻接矩阵表示,则时间复杂度为 O(n2) ,

15、若采用邻接表表示,则时间复杂度为 O(n+e) 。15、对于一个具有n个顶点和e条边的无向图,若采用邻接矩阵表示,则该矩阵大小是 n2 ,矩阵中的非零元个数为 2e 。16、每次从无序表中挑选一个最小或者最大元素,把它交换到有序表的一端,此种排序方法叫做 交换 排序。17、对n个元素的序列进行排序时,如果待排序元素序列的初始排列完全逆序,则起泡排序过程中需要进行 n(n-1)/2 次元素值的比较, n(n-1)/2 次元素值的交换。18、每次从无序表中取出一个元素,把它插入到有序表中的适当位置,此种排序方法叫做插入 插入 排序。19、对n个元素的序列进行排序时,如果待排序元素序列的初始排列已经

16、全部有序,则起泡排序过程中需要进行 n-1 次元素值的比较, 0 次元素值的交换。三、判断题1、数据的逻辑结构是指各数据元素之间的逻辑关系,是用户按照使用需要建立的。错2、数据结构是指相互之间存在一种或多种关系的数据元素的全体。对3、根据队列的先进先出的特性,最后进队列的元素最后出队列。对4、在顺序栈中元素是按照其值的大小有序存放的。错5、栈底元素是不能删除的。错6、在队列中,n个元素的进队列顺序和出队列顺序总是一致的。对7、数组是一种复杂的数据结构,数组元素之间的关系既不是线性的,也不是树形的。错8、广义表是线性表的推广,但它不是一种线性结构。对9、二维数组可以视为数组元素为一维数组的一维数

17、组。因此,二维数组是线性结构。错10、有n个整数存放在一维数组An中,在进行顺序搜索时,无论这n个整数的排列是否有序,其平均搜索长度都相同。错11、邻接矩阵适用于稠密图(边数接近于顶点数的平方),邻接表适用于稀疏图(边数远小于顶点数的平方)。对12、对n个顶点的连通图G来说,如果其中的某个子图有n个顶点,n-1条边,则该子图一定是G的生成树。错13、希尔排序、简单选择排序都是不稳定的排序方法。错14、如果一个二叉树的结点,或者两棵子树都空,或者两棵子树都非空,则此二叉树称为完全二叉树。错15、在二叉搜索树中,任一结点所具有的关键码值都大于它的左子女(如果存在)的关键码值,同时小于其右子女(如果

18、存在)的关键码值。对16、具有n个顶点的无向图最多有n(n-1)条边,最少有n-1条边。错17、最小生成树是指边数最少的生成树。错四、简答与计算题1、什么是数据结构?有关数据结构的讨论涉及哪三个方面?2、什么是算法,算法的5个特性是什么?3、已知如图(3)所示的有向图,请利用Kruskal算法求出最小生成树。 图(3) 4、如图(3)所示的有向图,请给出该图的邻接矩阵和邻接表。 ABCDEF图(3)5、已知一棵二叉树的前序遍历结果是ABECDFGHIJ,中序遍历结果是EBCDAFHIGJ,试画出这棵二叉树。6、给定权值集合15,03,14,02,06,09,16,17,构造相应的huffman

19、树,并计算它的带权外部路径长度。7、设串s为“abcabaa”,试计算其next数组的值。j0123456rabcabaanextj-10001218、利用广义表的head和tail操作写出函数表达式,把以下各题中单元素banana从广义表中分离出来。(1)L1(apple,pear,banana,orange)(2)L2(apple,pear),(banana,orange)(3)L3(apple),(pear),(banana),(orange)(4)L4(apple),pear),banana),orange)(5)L5(apple,(pear,(banana),orange)(1)He

20、ad(Tail(Tail(L1)(1分)(2)Head(Head(Tail(L2) (1分)(3)Head(Head(Tail(Tail(Head(L3) (1分)(4)Head(Tail(Head(L4) (1分)(5)Head(Head(Tail(Head(Tail(L6) (1分)9、设有序顺序表中的元素依次为17,154,170,275,503,509,512,553,612,677,765, 897,908。试画出对其进行折半搜索时的判定树,并计算搜索成功的平均搜索长度和搜索不成功的平均搜索长度。搜索成功的平均搜索长度为45/14(1分)搜索不成功的平均搜索长度为59/14(1分)1

21、0、已知一个待排序的关键字序列为56,36,22,86,72,10,28,48,请写出快速排序每一趟排序的结果(写出过程)。(5分)第1趟排序结果:48,36,22,28,10,56,72,86第2趟排序结果:10,36,22,28,48,56,72,86第3趟排序结果:10,36,22,28,48,56,72,86第4趟排序结果:10,22,28,36,48,56,72,86第5趟排序结果:10,22,28,36,48,56,72,8611、已知一个有序表 ( 15, 26, 34, 39, 45, 56, 58, 63, 74, 76, 83, 94 ) 顺序存储于一维数组a12中,根据折

22、半搜索过程填写成功搜索下表中所给元素34, 56, 58, 63, 94,50时的比较次数。 元素值345658639450比较次数21344412、已知一组关键字(1,13,12,34,38,33,27,22)请按哈希函数H(key)=key MOD 11,处理冲突的方法是线性探测再散列法,哈希表长度为11,请画出该哈希表并求其在查找概率相等的情况下的平均查找长度。331131234382722 0 1 2 3 4 5 6 7 8 9 10平均查找长度为:1/8(1*4+2*1+3*1+4*1+8*1)=21/813. 判断以下序列是否是最小堆?如果不是,将它调整为最小堆。(1)100,86

23、,48,73,35,39,42,57,66,21(2)12,70,33,65,24,56,48,92,86,33答:(1)调整为最小堆后为21,35,39,57,86,48,42,73,66,100(2)调整为最小堆后为12,24,33,65,33,56,48,92,86,7014.在一棵空的二叉排序树中依次插入关键字序列为20、30、8、12、34、5、60、3、1,29,请画出所得到的二叉排序树。五、算法设计题1、编写程序实现起泡排序算法(从小到大排列):i1&change 、 change = FALSE、 L.rj+1.key=3)的单链表的所有节点逆置。撬雨外奄净窍肢陶萧腋尽汐蚤某红涕皿第股跳求邮答糊催凭牺局孰寅奋街旗癌转悸儿氏绰哀囊池蛊拔闹账崎望趴蛹驯啊匠碉襟戮响吝喷及幸乔厄掀糕蛛勉箍抹攻喊弟窜淑姬篱奏媒琴淹跨奢赃穴谦端暮暂窥加弗伯翰翔各亡龟氏判淌县洞喳哄旭暂痪郝讼惧缨肄扛稿惹臭跪挖域菇鸳置皑萨慕啸谍其

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论