欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

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

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

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

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

    1、830数据结构真题答案有错 2一、 选择题111.B 2.A 3.C 4.A 5.D 6.A 7.B 8.A 9.C 10.C1.B 12.C 13.A 14.C 15.B 16.D 17.D 18.D 19.A 20.A5 解释:线索二叉树中某结点是否有左孩子,不能通过左指针域是否为空来判断,而要判断左标志是否为 1。二、 填空题123.归并排序。. 能否将关键字均匀影射到哈希空间上.一端 先进后出有无好的解决冲突的方法456789. 顺序存储或链式存储 (1+n)/2.从任意节点出发都能访问到整个链表.时间 空间.n-1 n(n-1)/2.2n-1.n n三、 判断题12345678911

    2、1111.F.F 非空才成立.F 有向的非强连通图,不成立.T.F 表头没有前驱,表尾没有后序.T.F 先序跟后序不行,中序才行.T.F 不可能0.T1.F2.T3.F4.F5.F四、 应用题1逻辑结构是从操作对象抽象出来的数学模型,结构定义中的“关系”描述的是数据元素之间的逻辑关系;物理结构是数据结构在计算机中的表示(又称映像),又称存储结构。物理结构是指数据具体存放在哪个位置,逻辑结构是 23由 AOV 网构造拓扑序列的拓扑排序算法主要是循环执行以下两步,直到不存在入度为 0的顶点为止。(1) 选择一个入度为 0的顶点并输出之;(2) 从网中删除此顶点及所有出边。拓扑序列 1:abcdef

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

    4、(LNode);L-next=NULL;for(int i=n;i0;i-)p=(LinkList)malloc(sizeof(Lnode);scanf(&p-data);p-next=L-next;L-next=p;3.弗洛伊德算法 或者 迪杰斯特拉算法都可以解决采用弗洛伊德算法(1) 采用邻接矩阵,邻接矩阵的值代表乘车费用。(2) 这里算法不详细给出,数据结构书中有算法,这两个算法很重要。一定要自己完全理解。 2011参考答案一选择题18.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二填空题1234567891

    5、. 线性结构 非线性结构. (8,9,4,3,6,2,12,13,19,18). 二叉树 小顶堆.89.存入元素 移动指针 (严蔚敏书中入栈是这么操作,实际看自己怎么规定). 队列中仅有一个元素(或删除队列变成空).n-1.k2.b0.n三、判断题1234567891.T.F.T.F.T.T.T.F.F0.F四简答题1第一趟结果: 13,27,51,55,10,49,38,65,97,75元素移动五次。 2.邻接矩阵图如下:邻接表图如下:拓扑序列:abgcdfe3.关键活动和关键路径关键路径:从起点到终点的最长路径长度,这个最长的路径就叫做关键路径。关键活动:关键路径上的所有活动都是关键活动。

    6、关键活动:a1-a4-a8-a11 关键路径:a-b-e-h-k4.这道题很重要。数据结构上有解析,请认真理解好。 5(.哈夫曼树问题1)注意:规定权值较小的结点为左子树(3)需要总bit 数:17*2+12*3+5*4+28*2+35*2+3*4=228(需要字节数:228/8=28.5=29 需要29 个字节。(4)翻译后的正文是:BCBAE.哈希平均查找长度问题6五、算法填空. (1) p-next-datanext=null | p-next-data=maxk (3) p-next=q;1 2. (4)vLeft);PostOrderTraversal (BT-Right);prin

    7、tf(%c,BT-TData);2/.这道题也可以参考高分笔记/ 邻接矩阵typedef struct _graph char vexsMAX; / 顶点集合int vexnum; / 顶点数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 =

    8、 0; / rets 数组的索引int vendsMAX=0; / 用于保存已有最小生成树中每个顶点在该最小树中的终 点。EData retsMAX; / 结果数组,保存kruskal 最小生成树的边EData *edges; / 图对应的所有边/ 获取图中所有的边edges = get_edges(G);/ 将边按照权的大小进行排序(从小到大)/sorted_edges(edges, G.edgnum);for (i=0; ilchild=NULL&p-rchild=NULL.一端 先进后出0021,235,346,256,558三、判断题12345.T.F.F.T.F不一定,要是有两条关键

    9、路径,有一段是重合的,那么提高重合这一段的活动速度是可以缩短工期的。否则是,是不能缩短整个工期的。67891.F.T.F.F 先序和后序是不能确定一颗树的0.F 需要 1+2+n=(1+n)n/2 个空间四、简答题./快速排序,两边同时遍历,当遇到小于枢轴的数就往左边放,大于枢轴的就往右边放,一趟排序下来,比枢轴小的都在枢轴左边,比枢轴大的都在枢轴右边163335,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,982.删除线性表 L 中大于 X 小于 Y 的节点 3.

    10、按边的权值排序:3,5,12,14,15,17,25依次选取,如果不构成回路,则加入;否则,就跳过该边。最小生成树如下:45. 深度优先搜索遍历:V0V1V4V2V3V5V6广度优先遍历:V0V1V2V3V4V5V6.弗洛伊德算法,请认真理解。 6.五、算法填空12. (QueuePtr)malloc(sizeof(QNode) NULL Q.rear-next p. !StackEmpty()|p!=NULL Push(S,p) Pop(S,p) p-rchild六、编写算法1. void preOrderTraverse(BiTree T,int *count)if(T) / T 不空/如

    11、果为叶子节点,就加1if(T-lchild=NULL& T-rchild=NULL)/*count+;preOrderTraverse(T-lchild,count);preOrderTraverse(T-rchild,count); 2. 设计一个图的数组表示存储结构,并编写采用数组表示法构造一个无向网的算法#define MAX_VERTEX_NUM 20typedef struct ArcCellVRType adj;InfoType *info;ArcCell,AdjMatrixMAX_VERTEX_NUMMAX_VERTEX_NUM;typedef struct VertexType

    12、 vexsMAX_VERTEX_NUM;AdjMatrix arcs;int vexnum,arcnum;GraphKind kind;MGraph; 2013参考答案一选择题11.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二、填空题12345671891十字链表 三元组.一对一 一对多.2n-1. 能否将关键字均匀影射到哈希空间上.前驱结点 后继结点有无好的解决冲突的方法.n2+1.60解释:三元组存储行标,列表,非零元。一个需要六个字节,0*6=60.L-next=L.440.15,40,95,20,50,70

    13、三.判断题1234567891.F 相当于树的先序遍历.T.F.F.F.F.F.T.F0.F四、简答题1.从顶点 0到其余各节点的最短路径 2.34.计算节点值为 0 的节点个数。.这里要区别克鲁斯卡尔跟普利姆算法的区别普利姆算法:每次选取从这个节点到其他未被选择节点的最短边加入。克鲁斯卡尔:给边排好序,每次选取最短的边,如果不构成回路就加入 5.先序序列:ABDGCEHIF 中序遍历:DGBAHEICF后序遍历:GDBHIEFCA6.(1)采用头插法,看清楚题目 (2)比较 4次(3)(1*5+2*2+3+4)/9=1.78 平均查找长度为 1.78五、算法填空12.p-next!=NULL

    14、 p=p-next p-next=q-next free(q).jj ai=ai+1 ai+1=temp flag=0六、编写算法1设计在顺序有序表中实现折半查找的算法。(10 分)2设计 AOV-网拓扑排序的算法(12 分)数据结构第七章有向无环图及其应用拓扑排序 2014参考答案一、选择题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二、填空题123456.一对多 多对多. 插入和删除首结点时不必对头指针进行特殊处理.2n-1. 将矩阵第 i 行全部置为零.队尾 对头 先进先出.能否将关键字均匀影射到哈希空

    15、间上 有无好的解决冲突的方法三、判断题12345678.F.T.T.F.T.F.T.T91.F解释:0.T四、简答题1. 2. 关键路径:从源点到汇点的路径长度最长的路径叫关键路径。关键路径:a1 a5 a6 a8 a7 a1034. 在排好序的线性表中,删除值为 X 的所有元素。.五、算法填空12.sizeof(ElemType) !S.base S.stacksize e top+1.vnext=p-next; p-next=s;三、判断题1234567891.T.F.T.F.T.F.T.T.F0.T表头没有前驱,表尾没有后继不唯一四、简答题12. 树的非递归中序遍历. 3.快速排序:两边

    16、同时遍历,大于枢轴的交换到右边,小于的交换到左边此处不给该题的具体实现,解题过程参照下图: 4(.1)(2)拓扑排序:V1 v3 v2 v6 v5 v43)迪杰斯特拉算法问题:5. 构造哈夫曼树如上图,编码a:11 b:100 c:001 d:0001 e:101 f:01 g:0000五、算法填空12、!P e NULL Q.rear-next p、v=0DFS(G,w)六、编写算法1. void Process(LinkList &L, int x, int y) / L 线性表的元素递增有序排列LinkList p=L, q, s;if (p-next!=NULL) & (xnext!=

    17、NULL & p-next-datanext;if (p-next=NULL | p-next-data=y) return ERROR;q=p-next;while (q-next!=NULL & q-datanext; free(s); p-next=q; 2.思路:利用图的广度优先遍历,那么最后一个遍历的节点一定离顶点最远。int Maxdist(AGragh *G,int v)ArcNode *p;int QuMAXV;/循环队列int front=0,rear=0;/队列的头、尾指针int visitedMAXV;/初始化访问数组int i,j,k;for(i=0;in;i+)vis

    18、itedi=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;/进队Qurear=j;p=p-nextarc;/找下一个邻接点return k; 2016参考答案一、选择题1

    19、.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二、填空题12345678.n-i.(SQ.front+1)%(m+1).p-next=q-next free(q).n+1.89.O(log2 n) O(nlog2 n).d. 1、4、2、3三、 判断题1234567891.F.T.F.T.F.F.F.T.T0.F四、简答题1.(1) (2)2.3.平衡二叉树旋转的问题4.(1) (2)(3)深度优先搜索序列:a,b,c,d,e,f深度优先生成树:5.(1)希尔排序 (2)出始堆(题目要求升序,因此要构建大顶堆)第一趟排序后的结果:推荐阅读以便理解堆排:五算法填空123.p-next=L L=p;.T-lchildp=p-lchild p-rchild!=T p=p-rchild p=p-lchild. !T T-lchild T-rchild六、编写算法i i(1)参照快速排序思想。i,j 分别从前后遍历,要是 aiK 将其往后仍,ajK 则将其往前扔 (2)哈夫曼算法(构造哈夫曼树and求各个字符的哈夫曼编码)


    注意事项

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

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

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

    收起
    展开