2003年度系统设计师(高级程序员)上午试题解析-数据结构篇

2003年度系统设计师(高级程序员)上午试题解析

-数据结构篇

 

陈智罡(chzg99@21cn.com

 

数据结构在高程考试中占有很大的比例,掌握好数据结构,对于编程人员来说无疑是内功的修炼。数据结构主要有三个方面的内容:数据的逻辑结构;数据的物理存储结构;对数据的操作(或算法)。通常,算法的设计取决于数据的逻辑结构,算法的实现取决于数据的物理存储结构。逻辑结构有四种基本类型:集合结构、线性结构、树状结构和网络结构。表和树是最常用的两种高效数据结构,许多高效的算法可以用这两种数据结构来设计实现。表是线性结构的(全序关系),树(偏序或层次关系)和图(局部有序)是非线性结构。掌握线性表、多维数组、阵列、栈、树、二叉树,图的定义、存储和操作以及常见的排序和查找算法。重点是二叉树和图以及与其相关的算法。对数据结构的复习要求面面俱到,大家应该对教材的每一点都掌握。

 1.关键路径是指AOE(Activity On Edge)网中________

    A. 最长的回路          B. 最短的回路

C. 从源点到汇点(结束顶点)的最长路径

D. 从源点到汇点(结束顶点)的最短路径

答案:C

解析:AOE网是一个有向图,通常用来估算工程的完成时间,图中的顶点表示事件,有向边表示活动,边上的权表示完成这一活动所需的时间。AOE网没有有向回路,存在唯一的入度为零的开始顶点,及唯一的出度为零的结束顶点。对AOE网最关心的两个问题:完成整个工程至少需要多少时间?那些活动是影响工程进度的关键?这就引出两个概念:关键路径和关键活动。从开始顶点到结束顶点的最长路径是关键路径,路径的长度也是工程完成的最少时间。关键路径上的所有活动是关键活动,关键活动的最大特征是:该活动的最早开始时间等于该活动所允许的最迟开始时间。关键活动拖延时间,整个工程也要拖延时间。求关键路径只需求出起点到终点的最长路径即可,注意关键路径不是唯一的。

复习提示:类似的考点还有:AOV网、最短路径、最小生成树。

 2.以下序列中不符合堆定义的是________

A(102871007982628442221268)

B(102100878482796862422212)

C(122242626879828487100102)

D(102874279826268100841222)

答案:D

解析:判断堆的办法就是把序列看成是一棵完全二叉树,若树中的所有非终端结点的值均不大于(或不小于)其左右孩子的结点的值,则该序列为堆。

复习提示:考生复习过程中对定义一定要清楚,这是拿分的关键。

 3.一个具有767个结点的完全二叉树,其叶子结点个数为____

A. 383   B. 384   C. 385   D. 386

答案:B

解析:可以根据公式进行推导,假设n0是度为0的结点总数(即叶子结点数),n1是度为1的结点总数,n2是度为2的结点总数,由二叉树的性质可知:n0n21,则n= n0n1n2(其中n为完全二叉树的结点总数),由上述公式把n2消去得:n= 2n0+n11,由于完全二叉树中度为1的结点数只有两种可能01,由此得到n0=(n1/2n0n/2,合并成一个公式:n0ën1/2 û,就可根据完全二叉树的结点总数计算出叶子结点数。本题计算得:384

复习提示:该记得公式要记住,临时推导也可以,但容易耽误时间。

 4.若一个具有n个结点、k条边的非连通无向图是一个森林(n>k),则该森林中必有____棵树。

A. k     B. n   C. n-k D. n+k

答案:C

解析:假设该森林中有s棵树:T1,T2,……,TS ,且每个Tini 个结点,ki条边(i=1,2,……,S),由树的等价条件可知: kini1,则kk1+k2+……+ks=n11+n21)+……+(ns1)=ns,s=nk,所以该森林中必有nk棵树。

复习提示:该题如果清楚树的等价条件,可以很容易的解出。若不清楚,则无法下手。不过考生也可以画出一个具体的非连通无向图的森林,如:5个结点3条边2棵树的森林,也可帮助判断。抽象问题具体化是作选择题的一个重要方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值