欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数据结构考试题5.doc

    • 资源ID:23867139       资源大小:156.50KB        全文页数:6页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据结构考试题5.doc

    【精品文档】如有侵权,请联系网站删除,仅供学习与交流数据结构考试题5.精品文档.要求:所有的题目的解答均写在答题纸上,需写清楚题目的序号。每张答题纸都要写上姓名和学号。一、单项选择题(每小题2分,共20小题,共计40分)1. 某算法的空间复杂度为O(1),则 。A.该算法执行不需要任何辅助空间B.该算法执行所需辅助空间大小与问题规模n无关C.该算法执行不需要任何空间D.该算法执行所需全部空间大小与问题规模n无关2. 在长度为n的顺序表中插入一个元素,对应算法的时间复杂度为 。A.O(1)B.O(log2n)C.O(n)D.O(n2)3. 设线性表中有n个元素,以下运算中, 在单链表上实现要比在顺序表上实现效率更高。A.删除指定位置元素的后一个元素B.在最后一个元素的后面插入一个新元素C.顺序输出前k个元素D.交换第i个元素和第n-i+1个元素的值(i=1,2,n)4. 以下数据结构中元素之间为非线性关系的是 。A.栈B.队列C.线性表D.以上都不是5. 若一个栈用数组data1.n存储,初始栈顶指针top为n+1,则以下元素x进栈的正确操作是 。A.top+;datatop=x;B.datatop=x;top+;C.top-;datatop=x;D.datatop=x;top-;6. 若某循环队列有队首指针front和队尾指针rear,在队不满时进队操作仅会改变 。A.frontB.rearC.front和rearD.以上都不队7. 设循环队列中数组的下标是0N-1,其队头、队尾指针分别为f和r(f指向队首元素的前一位置,r指向队尾元素),则其元素个数为 。A.r-fB.r-f-1C.(r-f)N+1D.(r-f+N)N8. 设树T的度为4,其中度为1、2、3、4的结点个数分别为4、2、1、1,则T中的叶子结点个数是 。A.5B.6C.7D.89. 一棵哈夫曼树中共有199个结点,它用于多少个字符的编码 。A.99B.100C.101D.19910. 设森林F中有4棵树,第1、2、3、4棵树的结点个数分别为a、b、c、d,将森林F转换为一颗二叉树B,则二叉树B根结点的左子树上的结点个数是 。A.a-1B.aC. a+b+cD.b+c+d11. 下列关于图的叙述中,正确的是 。.回路是简单路径.存储稀疏图,用邻接矩阵比邻接表更省空间.若有向图中存在拓扑序列,则该图不存在回路A. 仅B. 仅、C. 仅D. 仅、12. 以下关于有向图的说法中,正确的是 。A.强连通图是任何顶点到其他所有顶点都有边B.完全有向图一定是强连通图C.有向图中任一顶点的入度等于出度D.有向图边集的子集和顶点集的子集可构成原有向图的子图13.无向图的邻接矩阵是一个 。A.对称矩阵B.零矩阵C.上三角矩阵D.对角矩阵14. 如果从无向图的任一顶点出发进行一次广度优先遍历即可访问所有顶点,则该图一定是 。A.完全图B.连通图C.有回路D.一棵树15. 用Dijkstra算法求一个带权有向图G中从顶点0出发的最短路径,在算法执行的某时刻,S=0,2,3,4,下一步选取的目标顶点可能是 。A.顶点2B.顶点3C.顶点4D.顶点716. 哈希表中出现冲突是指 。A. 两个元素具有相同的序号B. 两个元素的关键字不同,而其他属性相同C. 数据元素过多D. 两个元素的关键字不同,而对应的哈希函数值(存储地址)相同17. 适合于折半查找的数据组织方式是 。A.以链表存储的线性表B.以顺序表存储的任意线性表C.以链表存储的有序线性表D.以顺序表存储的有序线性表18. 对有n个记录的表进行直接插入排序,在最好情况下需比较 次关键字。A.n-1B.n+1C.n/2D.n(n-1)/219. 若数据元素序列11,12,15,7,8,9,23,1,5是采用下列排序方法之一得到的第二趟排序后的结果,则该排序算法只能是 。A.冒泡排序B.直接插入排序C.选择排序D.二路归并排序20. 对一组数据(25,84,21,47,15,27,68,35,20)进行排序,前3趟的排序结果如下:第1趟:20,15,21,25,47,27,68,35,84第2趟:15,20,21,25,35,27,47,68,84第3趟:15,20,21,25,27,35,47,68,84则所采用的排序方法是 。A.简单选择排序B.希尔排序C.二路归并排序D.快速排序二、问答题(共4小题,共计35分)1. (10分)对于如图1所示的带权无向图,直接给出利用普里姆算法(从顶点0开始构造)和克鲁斯卡尔算法构造出的最小生成树的结果(注意:按求解的顺序给出最小生成树的所有边,每条边用(i,j)表示)。图1 一个带权无向图G2. (10分)假设一棵二叉排序树的关键字为单个字母,其后序遍历序列为ACDBFIJHGE,回答以下问题:(1)画出该二叉排序树。(6分)(2)求在等概率下的查找成功的平均查找长度。(2分)(3)求在等概率下的查找不成功的平均查找长度。(2分)3. (8分)已知序列15,5,16,2,25,8,20,9,18,12,给出采用二路归并排序法对该序列作升序排序时的每一趟的结果。4. (7分)简要回答下列关于堆排序中堆的一些问题:(1)通常堆采用顺序还是链式存储结构?(3分)(2)设有一个小根堆,即堆中任意结点的关键字均小于它的左孩子和右孩子的关键字。其中具有最大关键字的结点可能在什么地方?(4分)三、算法设计题(共2小题,共计25分)1. (10分)某带头结点的非空单链表L中所有元素为整数,结点类型定义如下:typedef struct nodeint data;struct node *next; LinkNode;设计一个尽可能高效的算法,将所有小于零的结点移到所有大于等于零的结点的前面。2. (15分)假设二叉树中有n个结点,每个结点值为单个字符,而且所有结点值均不相同,采用二叉链存储结构存储,其结点类型定义如下:typedef struct node char data; struct node *lchild,*rchild; BTNode;请完成以下任务:(1)设计一个算法,在二叉树b中查找x结点(指结点值为x的结点),若找到该结点,返回其地址,否则返回NULL。给出你设计的算法的时间复杂度。(8分)(2)设计一个算法,利用(1)小题设计的算法输出二叉树b中x结点的所有子孙结点值。(7分)“数据结构”考试试题(A)参考答案一、单项选择题(每小题2分,共20小题,共计40分)1. B2. C3. A4. D5. C6. B7. D8. D9. B10. A11. C12. B13. A14. B15. D16. D17. D18. A19. B20. D二、问答题(共4小题,共计35分)1. (10分)答案:利用普里姆算法从顶点0出发构造的最小生成树为:(0,1),(0,3),(1,2),(2,5),(5,4),(5分)。利用克鲁斯卡尔算法构造出的最小生成树为:(0,1),(0,3),(1,2),(5,4),(2,5) ,(5分)。说明:顺序错误不给分。2. (10分)答案:(1)该二叉排序树的后序遍历序列为ACDBFIJHGE,则中序遍历序列为ABCDEFGHIJ,由后序序列和中序序列构造的二叉排序树如图2所示。(6分)图2 一棵二叉排序树(2)ASL成功=(1×1+2×2+4×3+2×4+1×5)/10=3。(2分)(3)ASL不成功=(6×3+3×4+2×5)/11=40/11=3.64。(2分)3. (8分)答案:采用二路归并排序法排序的各趟结果如图3所示。(每趟2分)图3 各趟排序结果4. (7分)答案:(1)通常堆采用顺序存储结构。(3分)(2)小根堆中具有最大关键字的结点只可能出现在叶子结点中。因为最小堆的最小关键字的结点必是根结点,而最大关键字的结点由偏序关系可知,只有叶子结点可能是最大关键字的结点。(4分)三、算法设计题(共2小题,共计25分)1. (10分)答案:void Move(LinkNode *&L)LinkNode *p=L->next,*pre=L; while (p!=NULL && p->data<0)/跳过小于0的结点 pre=p;p=pre->next;while (p!=NULL)if (p->data<0)/若*p结点值小于0pre->next=p->next;/从链表中删除*p结点p->next=L->next;/将*p结点插入到头结点之后L->next=p;p=pre->next;/p指向*pre之后结点,pre不变else/若*p结点值不小于0pre=p;/pre、p同步后移一个结点p=p->next;2. (15分)答案:(1)(7分)BTNode *Findx(BTNode *b,char x)/在二叉树b中查找x结点BTNode *p;if (b=NULL) return NULL;else if (b->data=x)return b;p=Findx(b->lchild,x);if (p!=NULL)return p;return Findx(b->rchild,x);算法的时间复杂度为O(n)(1分)。(2)(7分)void Sons(BTNode *b,char x)/输出x结点的子孙,初始时b指向x结点if (b!=NULL)if (b->data!=x)printf("%c ",b->data);Sons(b->lchild,x);Sons(b->rchild,x);void OutSons(BTNode *b,char x)/输出二叉树b中x结点的所有子孙结点值BNode *p= Findx(b,x);if (p!=NULL)Sons(p,x);

    注意事项

    本文(数据结构考试题5.doc)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开