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

    2018年广西桂林电子科技大学数据结构考研真题.doc

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

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

    2018年广西桂林电子科技大学数据结构考研真题.doc

    2018年广西桂林电子科技大学数据结构考研真题一、单项选择题(10小题,每小题3分,共30分)1. 下面代码段的时间复杂度是( )int m=0, sum=0;while (m<n-1) m=m+2; sum=sum+m;A. O(1) B. O(n) C. O(log2n) D. O(n2) 2. 链表不具有的特点是( )A可以随机访问任一元素B插入和删除时不需要移动元素C不必事先估计存储空间D所需空间与线性表的长度成正比3. 下面选项中,能将图1(a)中的链表变换成图1(b)中链表的操作是( )图1Ap->link->link = p->link;Bp->link = p->link->link;p->link->link = p->link;Ctemp=p->info; p->info=p->link->info; p->link->info=temp;D无法实现上述操作4. 给定函数fact(int n),若执行fact(4),则函数执行过程中发生的出栈操作次数是( )int fact(int n) int res=n; if (n>1) res=res*fact(n-1); return res;A2 B3 C4 D不确定5. 链栈与顺序栈相比,一个比较明显的优点是( )A.插入操作效率高 B.通常不会出现栈满的情况 C.取栈顶元素效率高 D.删除操作效率高6.在初始为空的队列中依次将元素1,2,3,4,5,6依次进队列后,又连续进行了三次出队操作,则此时队列的头元素是( )A3 B4C5D67. 一棵度为4的树,n0, n1, n2, n3,n4分别是树中度为0,1 ,2 ,3 ,4的结点的个数则有( )An0 = n1 + n2 + n3 + n4 Bn0 = 2*n4 + n3 + 1 Cn0 = 4*n4 + 3*n3 + 2*n2 + n1 Dn0 = 3*n4 + 2*n3 + n2 + 18. 下列关于平衡二叉排序树的描述,错误的是( )A基于同一关键码集合构造的各种二叉排序树中,平衡二叉排序树的检索效率最好B平衡二叉排序树中每个结点的左、右子树高度之差的绝对值不超过1 C在平衡二叉排序树中,动态插入或删除后,每个结点的左右子树能基本保持平衡D平衡二叉排序树适合构造动态字典9. 下列排序方法中,哪一种方法的比较次数与记录的初始排列状态无关?( )A. 直接插入排序 B. 冒泡排序 C. 快速排序 D. 直接选择排序10. 有向图的边集为<a, c>, <a, e>, <e, b>, <e, d>, <b, d>, <d, c>, <c, f>,下面正确的拓扑排序是( ) Aaebdcf Bacefbd Caecdcf D不存在拓扑序列二、简答题(5小题,每小题10分,共50分)1. 给定一个字符串C=“a0a1an-1an”,其采用顺序队列结构存储,现需要将其逆序,即变换成“anan-1a1a0”,变换后的结果仍然存储在原队列中。若给定一个顺序栈作为辅助结构,请给出实现策略。(请简单地用文字描述主要步骤)(10分)2. 请证明:一棵具有n个结点的二叉树中,所有结点的空子树个数等于n+1。(10分)3. 假定用于通信的电文仅由7个字符a,b,c,d, e,f,g组成,各个字符在电文中出现的频率分别为0.09,0.26, 0.2,0.18,0.01,0.14,0.12。试为这7个字符:(1)构造哈夫曼树(6分)(2)给出每个字符对应的哈夫曼编码(4分)4. 关键码集合B =(5,30,38,57,20,10,71,31,15,36,76),设散列表为HT0.6,散列函数为H(key) = key % 7并用拉链法解决冲突,请完成如下内容:(1) 构造散列表(6分)(2) 计算等概率情况下查找成功时的平均查找长度(4分)5. 请从图2中的顶点D出发,采用Dijkstra算法构造D到各顶点的最短路径(给出每一步的构造结果即可)(10分)图2三、阅读以下代码,按照要求完成题目(3小题,每小题10分,共30分)1. 请基于图3所示,给出在该双向链表中删除current指针指向结点的操作(该结点的前驱、后继都不为空),要求不能增加辅助指针。每个结点由llink、info、rlink三个字段构成,分别表示当前结点的左指针域、数据域和右指针域。(10分)/双向链表结点定义typedef stuct Node DataType info; struct Node *llink; /指向前驱的指针 struct Node *rlink; /指向后继的指针Node;Node *current;图3双向链表2. 下面是关于二分法检索的代码,请将其补充完整;数据元素存储在顺序表中,且按降序排列。(10分) /记录定义如下:typedef struct int key; /* 字典元素的关键码字段*/int value; /* 字典元素的属性字段*/DicElement;typedef struct int MAXNUM int n; /*n为字典中元素的个数 */ DicElement *element; /* 降序存储的字典元素:element0elementn-1 */ SeqDictionary; /二分法检索int binarySearch(SeqDictionary *pdic, int key, int *position)/检索字典pdic中是否存在关键码为key的元素。检索成功,返回1;否则返回0.int low, mid, high;  low=0; high = pdic->n-1; while( (1) )mid= (2) ;/* 当前检索的中间位置 */if(pdic->elementmid.key=key) /* 检索成功 */ *position=mid; return(1); else if(pdic->elementmid.key>key) (3) ; else (4) ; *position=low; return(0); /* 检索失败 */ 3. 根据以下给定的函数traverse,以图4描述的二叉树bt为函数输入,请写出运行结果。(10分)struct BinTreeNode;typedef struct BinTreeNode *PBinTreeNode;struct BinTreeNode DataType info; PBinTreeNode llink; PBinTreeNode rlink;typedef struct BinTreeNode *BinTree;void traverse( BinTree bt ) if(t=NULL) return; traverse(rightChild (bt); /rightChild(bt)是取bt二叉树的右子树函数 traverse(leftChild (bt); /leftChild(bt)是取bt二叉树的左子树函数visit(root(bt); /root(bt)是取bt二叉树的根结点,visit(x)表示访问结点x图4四、给定一组排序码: 29,32,52,66,8,14,43,20,若对其进行堆排序(1)请构建大根堆(5分)(2)请给出前3趟堆排序、每一趟排序后的结果(5分)五、无向带权图G=A,B,C,D,E,其邻接矩阵存储如图5所示。请基于该邻接矩阵存储结构回答以下问题:(1)图G是连通图吗?(3分)(2)给出从顶点C出发的广度优先遍历序列(请注意该答案唯一,4分)(3)给出从顶点B出发的深度优先遍历序列(请注意该答案唯一,4分)(4)请使用Kruskal算法构造图G的最小生成树,要求给出构造过程中的每一步结果(9分)图5六、众数指在一组数据中出现次数最多的数,例如若数据集合是1,2,9,5,9,6,9,则其众数是9;若数据集合是1,8,9,5,9,8,6,8,9,由于8和9都出现了3次,则其众数是8和9。请设计一个有效的算法,在10万个顺序存储的数据元素集合(无序存储)中找出众数,并分析所设计算法的时间复杂度。(10分)/顺序存储结构定义#define MAXNUM 1000000struct SeqList int MAXNUM; int n; /n是当前取105 DataType *element;/找众数DataType findMode(SeqList *sList)

    注意事项

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

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




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

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

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

    收起
    展开