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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

830数据结构真题答案有错Word下载.docx

1、abcdef 拓扑序列 2:adbcef.二叉树图如下:.略。已经不纳入考纲.哈夫曼编码问题编码: 3: 000020: 1010: 000122: 1118: 00137: 016.二叉排序树问题比根节点小的往左子树插,大的往右子树插。图如下:删除 50有两种做法:数据结构中的解析这里我用第二种做法:五.算法设计题&.算法填空(L.elemi-1) L.length-1 +p *p L.length-1;2. 设计算法: 输入 n 个元素的值 创建带头结点的单链线性表 L。void CreateList_L(LinkList &L,int n)L=(LinkList)malloc(sizeo

2、f(LNode);L-next=NULL;for(int i=n;i0;i-)p=(LinkList)malloc(sizeof(Lnode);scanf(&p-data);next=L-next;next=p;3.弗洛伊德算法 或者 迪杰斯特拉算法都可以解决采用弗洛伊德算法(1) 采用邻接矩阵,邻接矩阵的值代表乘车费用。(2) 这里算法不详细给出,数据结构书中有算法,这两个算法很重要。一定要自己完全理解。011参考答案一选择题.C 2.A 3.C 4.D 5.B 6.D 7.C.C 9.D 10.C 11.A 12. D 13.D 14.A 15.A二填空题. 线性结构 非线性结构. (8,

3、9,4,3,6,2,12,13,19,18). 二叉树 小顶堆.89.存入元素 移动指针 (严蔚敏书中入栈是这么操作,实际看自己怎么规定). 队列中仅有一个元素(或删除队列变成空).n-1.k2.b0.n三、判断题0.F四简答题第一趟结果: 13,27,51,55,10,49,38,65,97,75元素移动五次。.邻接矩阵图如下:邻接表图如下:拓扑序列:abgcdfe.关键活动和关键路径关键路径:从起点到终点的最长路径长度,这个最长的路径就叫做关键路径。关键活动:关键路径上的所有活动都是关键活动。a1-a4-a8-a11 关键路径:a-b-e-h-k.这道题很重要。数据结构上有解析,请认真理解

4、好。(.哈夫曼树问题1)注意:规定权值较小的结点为左子树3)需要总bit 数:17*2+12*3+5*4+28*2+35*2+3*4=228需要字节数:228/8=28.5=29 需要29 个字节。(4)翻译后的正文是:BCBAE.哈希平均查找长度问题五、算法填空. (1) p-next-datanext=null | p-data=maxk (3) p-next=q;. (4)vLeft);Right);printf(%c,BT-TData);/.这道题也可以参考高分笔记/ 邻接矩阵typedef struct _graph char vexsMAX; / 顶点集合int vexnum; /

5、 顶点数int edgnum; / 边数int matrixMAXMAX; / 邻接矩阵Graph, *PGraph;/ 边的结构体typedef struct _EdgeData char start; / 边的起点char end; / 边的终点int weight; / 边的权重EDatavoid kruskal(Graph G)int i,m,n,p1,p2;int length;int index = 0; / rets 数组的索引int vendsMAX=0; / 用于保存已有最小生成树中每个顶点在该最小树中的终点。EData retsMAX; / 结果数组,保存kruskal 最

6、小生成树的边EData *edges; / 图对应的所有边/ 获取图中所有的边edges = get_edges(G);/ 将边按照权的大小进行排序(从小到大)sorted_edges(edges, G.edgnum);for (i=0; ilchild=NULL&rchild=NULL0021,235,346,256,558不一定,要是有两条关键路径,有一段是重合的,那么提高重合这一段的活动速度是可以缩短工期的。否则是,是不能缩短整个工期的。.F 先序和后序是不能确定一颗树的0.F 需要 1+2+n=(1+n)n/2 个空间四、简答题./快速排序,两边同时遍历,当遇到小于枢轴的数就往左边放,

7、大于枢轴的就往右边放,一趟排序下来,比枢轴小的都在枢轴左边,比枢轴大的都在枢轴右边5,57,45,39,12,98,86,355, 57,45,39,12,98,86,355, 57,45,39,12,98,86,985, 57,45,39,12,65,86,98.删除线性表 L 中大于 X 小于 Y 的节点3.按边的权值排序:3,5,12,14,15,17,25依次选取,如果不构成回路,则加入;否则,就跳过该边。最小生成树如下:. 深度优先搜索遍历:V0V1V4V2V3V5V6广度优先遍历:V0V1V2V3V4V5V6.弗洛伊德算法,请认真理解。. (QueuePtr)malloc(size

8、of(QNode) NULL Q.rear-next p. !StackEmpty()|p!=NULL Push(S,p) Pop(S,p) p-rchild. void preOrderTraverse(BiTree T,int *count)if(T) / T 不空/如果为叶子节点,就加1if(T- T-rchild=NULL)*count+;preOrderTraverse(T-lchild,count);rchild,count);2. 设计一个图的数组表示存储结构,并编写采用数组表示法构造一个无向网的算法#define MAX_VERTEX_NUM 20typedef struct

9、ArcCellVRType adj;InfoType *info;ArcCell,AdjMatrixMAX_VERTEX_NUMMAX_VERTEX_NUM;typedef struct VertexType vexsMAX_VERTEX_NUM;AdjMatrix arcs;int vexnum,arcnum;GraphKind kind;MGraph;013参考答案.C 2.D 3.C 4.C 5.A 6.C 7.C 8.C 9.A 10.A 11.A2.C 13.D 14.A 15.C十字链表 三元组.一对一 一对多.前驱结点 后继结点.n2+1.60解释:三元组存储行标,列表,非零元。

10、一个需要六个字节,0*6=60.L-next=L.440.15,40,95,20,50,70三.判断题.F 相当于树的先序遍历1.从顶点 0到其余各节点的最短路径.计算节点值为 0 的节点个数。.这里要区别克鲁斯卡尔跟普利姆算法的区别普利姆算法:每次选取从这个节点到其他未被选择节点的最短边加入。克鲁斯卡尔:给边排好序,每次选取最短的边,如果不构成回路就加入先序序列:ABDGCEHIF 中序遍历:DGBAHEICF后序遍历:GDBHIEFCA(1)采用头插法,看清楚题目(2)比较 4次(3)(1*5+2*2+3+4)/9=1.78 平均查找长度为 1.78.p-next!=NULL p=p-ne

11、xt p-next=q-next free(q).jj ai=ai+1 ai+1=temp flag=01设计在顺序有序表中实现折半查找的算法。(10 分)设计 AOV-网拓扑排序的算法(12 分)数据结构第七章有向无环图及其应用拓扑排序014参考答案1.C 2.A 3.A 4.B 5.D 6.D 7.C 8.C 9.C 10.A 11.A 12.D 13.B 14.A 15.A.一对多 多对多. 将矩阵第 i 行全部置为零.队尾 对头 先进先出.能否将关键字均匀影射到哈希空间上 有无好的解决冲突的方法. 关键路径:从源点到汇点的路径长度最长的路径叫关键路径。a1 a5 a6 a8 a7 a1

12、0. 在排好序的线性表中,删除值为 X 的所有元素。.sizeof(ElemType) !S.base S.stacksize e top+1.vnext=p- p-next=s;表头没有前驱,表尾没有后继不唯一. 树的非递归中序遍历.快速排序:两边同时遍历,大于枢轴的交换到右边,小于的交换到左边此处不给该题的具体实现,解题过程参照下图:1)2)拓扑排序:V1 v3 v2 v6 v5 v43)迪杰斯特拉算法问题:构造哈夫曼树如上图,编码a:11 b:100 c:001 d:0001 e:101 f:01 g:0000、!P e NULL Q.rear-next p、v=0DFS(G,w)1.

13、void Process(LinkList &L, int x, int y) / L 线性表的元素递增有序排列LinkList p=L, q, s;if (p-=NULL) & (x=NULL &=x) p=p-if (p-next=NULL | p-=y) return ERROR;q=p-while (q- q-y) s=q; q=q- free(s); 2.思路:利用图的广度优先遍历,那么最后一个遍历的节点一定离顶点最远。int Maxdist(AGragh *G,int v)ArcNode *p;int QuMAXV;/循环队列int front=0,rear=0;/队列的头、尾指针

14、int visitedMAXV;/初始化访问数组int i,j,k;for(i=0;in;i+)visitedi=1;/初始化访问标志数组rear+;Qurear=v;/顶点v 进队visitedv=1;/顶点v 已访问while(front!=rear)front=(front+1)%MAXV;k=Qufront;/顶点k 出队p=G-adjlistk.firstarc;/找到第一个邻节点while(p!=NULL)/所有未访问过的相邻点进队j=p-adjvex;/邻接点为顶点jif(visitedj=0)/若j 未访问过visitedj=1;rear=(rear+1)%MAXV;/进队Qu

15、rear=j;p=p-nextarc;/找下一个邻接点return k;016参考答案1.B 2.B 3.A 4.C 5.A 6.A 7.A 8.B 9.C 10.D 11.D 12.A 13.D 14.C 15.A.n-i.(SQ.front+1)%(m+1).n+1.O(log2 n) O(nlog2 n).d. 1、4、2、31.(1)(2)2.3.平衡二叉树旋转的问题4.(3)深度优先搜索序列:a,b,c,d,e,f深度优先生成树:5.(1)希尔排序(2)出始堆(题目要求升序,因此要构建大顶堆)第一趟排序后的结果:推荐阅读以便理解堆排:五算法填空next=L L=p;.T-lchildlchild p-rchild!=T p=p-rchild p=p-T T-lchild T-i i(1)参照快速排序思想。i,j 分别从前后遍历,要是 aiK 将其往后仍,ajK 则将其往前扔(2)哈夫曼算法(构造哈夫曼树and求各个字符的哈夫曼编码)

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

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