首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C语言函数,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 在一个分布网络中,资源(石油、天然气、电力等)可从生产地送往其他地方。在传输过程中,资源会有损耗。例如,天然气的气压会减少,电压会降低。我们将需要输送的资源信
阅读下列说明和C语言函数,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 在一个分布网络中,资源(石油、天然气、电力等)可从生产地送往其他地方。在传输过程中,资源会有损耗。例如,天然气的气压会减少,电压会降低。我们将需要输送的资源信
admin
2018-07-23
72
问题
阅读下列说明和C语言函数,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
在一个分布网络中,资源(石油、天然气、电力等)可从生产地送往其他地方。在传输过程中,资源会有损耗。例如,天然气的气压会减少,电压会降低。我们将需要输送的资源信息称为信号。在信号从信源地送往消耗地的过程中,仅能容忍一定范围的信号衰减,称为容忍值。分布网络可表示为一个树形结构,如题图4-1所示。信号源是树根,树中的每个节点(除了根)表示一个可以放置放大器的子节点,其中某些节点同时也是信号消耗点,信号从一个节点流向其子节点。
每个节点有一个d值,表示从其父节点到该节点的信号衰减量。例如,在题图4-1中,节点w、p、q的d值分别为2、1、3,树根节点表示信号源,其d值为0。
每个节点有一个M值,表示从该节点出发到其所有叶子的信号衰减量的最大值。显然,叶子节点的M值为0。对于非叶子j,M(j)=max{M(k)+d(k)|k是j的孩子节点}。在此公式中,要计算节点的M值,必须先算出其所有子节点的M值。
在计算M值的过程中,对于某个节点i,其有一个子节点k满足d(k)+M(k)大于容忍值,则应在k处放置放大器,否则,从节点i到某叶子节点的信号衰减量会超过容忍值,使得到达该叶子节点时信号不可用,而在节点i处放置放大器并不能解决到达叶子节点的信号衰减问题。例如,在题图4-1中,从节点p到其所有叶子节点的最大衰减值为4。若容忍值为3,则必须在s处放置信号放大器,这样可使得节点p的M值为2。同样,需要在节点q、v处放置信号放大器,如题图4-2阴影节点所示。若在某节点放置了信号放大器,则从该节点输出的信号与信号源输出的信号等价。
函数placeBoosters(TreeNode*root)的功能是:对于给定树形分布网络中各个节点,计算其信号衰减量的最大值,并确定应在树中的哪些节点放置信号放大器。
全局变量Tolerance保存信号衰减容忍值。树的节点类型定义如下:
typedef struct TreeNode {
int id;/*当前节点的识别号*/
int ChildNum;/*当前节点的子节点数目*/
int d;/*父节点到当前节点的信号衰减值*/
struct TreeNode*★childptr;/*向量,存放当前节点到其所有子节点的指针*/
int M;/*当前节点到其所有子节点的信号衰减值中的最大值*/
bool boost;/*是否在当前节点放置信号放大器的标志*/
} TreeNode;
【C语言函数】
Void placeBoosters(TreeN0de *root)
{ /*计算root所指节点处的衰减量,如果衰减量超出容忍值,则放置放大器*/
TreeNode *p;
int i,degradation;
if(____(1)){
degradation=0;root->M=0;
i=0;
if(i>=root->ChildNum)
return;
p=____(2);
for(;i<root->childNum&&p;i++,p=____(3)){
p->M=0;
____(4);
if(p->d+p->M>Tolerance){/*在p所指节点中放置信号放大器*/
p->boost=true;
p->M=0;
}
if(p->d+p->M>degradation)
degradation=p->d+p->M;
}
root->M=____(5);
}
}
选项
答案
(1)root (2)root->childptr[0] (3)root->childptr[i] (4)placeBoosters(p) (5)degradation
解析
本题考查数据结构中树的基本操作。题目说明部分对树的结构以及程序的目的有比较明确的说明。本程序的功能是在合适的位置安放信号放大器。通过对题目说明部分的分析可以得知放置信号放大器的原则是判断当前节点的d
+M
是否大于容忍值。若大于,则在i处设信号放大器。例如,对于节点s,d[s]=2,M[s]=2,d[s]+M[s]=4,此时容忍值为3,则d[s]+M[s1]>3,需要在此放置一个信号放大器。但在题目中,节点的M值是未提供的,所以程序应完成两个操作,第一个是求出节点的M值,第二个是确定当前节点是否需要加信号放大器。
下面进行具体的代码分析。
空(1)处是一个判断条件,当条件成立时,才能进入程序主体。这一空非常容易,在对树进行操作的过程中,只有当前节点不为空节点时才有必要进行相应的操作,所以此处应填入root。
通过对程序主体进行分析可知,指针p用于指向子节点,其初始值应为第一个子节点childptr[0]的指针,因此空(2)处应填入root->childptr[0],此后P依次指向下一个子节点。因此空(3)处应填入root->childptr
。
空(4)处是关键的一步,由于“要计算节点的M值,必须先算出其所有子节点的M值”,所以需要用到递归,利用递归来计算子节点的M值,故此处填入placeBoosters(p)。
空(5)处非常容易,是将已求得的M值存入当前节点的root->M中,由于程序中计算出来的M记录在degradation中,所以此处填入degradation。
转载请注明原文地址:https://kaotiyun.com/show/pKDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
某公司申请到的IP地址为193.136.99.0,如图7-4所示,为了便于管理,需建立4个子网(要求每个子网的掩码必须相同),请回答如下问题。
请说出(1)、(2)、(3)、(4)、(5)对应行的含义。(1)图6-3是Windowsxp的DNS设置窗口,请指出图6-3中配置错误之处。(2)在Windowsxp系统中,根据图6-3中的相关信息,请写出默认路由。(3)图6-
阅读以下说明,回答问题1和问题2。【说明】某学校拟组建一个小型校园网,具体设计如下:1.设计要求。(1)终端用户包括:48个校园网普通用户;一个有24个多媒体用户的电子阅览室;一个有48个用户的多媒体教室(性能要求高于电子阅
请用100字以内的文字说明该网管软件项目采用快速原型开发方法的优缺点。在最理想和保守的估计中加速开发进度要着重抓的共同环节是哪些?请用50字以内的文字加以说明。
在配置Windows2003VPN服务器时,在管理工具中打开“路由和远程访问”,接着在所列出的本地服务器上单击鼠标右键,从弹出菜单中选择“配置并启用路由和远程访问”。在以下“路由和远程访问服务器安装向导”界面中(见图1-14),选择(1)单选按钮,接着
在配置Windows2003VPN服务器时,在管理工具中打开“路由和远程访问”,接着在所列出的本地服务器上单击鼠标右键,从弹出菜单中选择“配置并启用路由和远程访问”。在以下“路由和远程访问服务器安装向导”界面中(见图1-14),选择(1)单选按钮,接着
请说出图9-1的拓扑结构名称与特点。PC2、PC4与PCI、PC3、PC5要连网且能相互访问,需要增添什么设备?
该企业网络的核心层采用了ATM技术,由3台ATM交换机互联构成。试对ATM网络技术的主要特点、协议分层结构和优点作简要叙述。(控制在100个字以内)PC1~PC4按100Mbit/s的以太网协议运行,PC1和PC2划分在一个虚拟网之中(VLAN1),
目前,通过移动电话接入互联网所采用的主要技术是什么?公司网络中的设备或系统(包括存储商业机密的数据库服务器、邮件服务器,存储资源代码的PC、应用网关、存储私人信息的PC、电子商务系统)中,哪些应放在DMZ中,哪些应放在内网中?并请给予简要说明。
光接入网(OAN)由ONU、ODN和OLT等三大部分组成。请将以下所提供的网络设备的序号填写到如图3-6所示的网络结构图中(1)~(5)空缺处对应的位置。【供选择的设备】①ONU②OLT③光分路器④光收发器⑤
随机试题
在下列质量控制的统计分析方法中,需要听取各方意见,集思广益,相互启发的是()。
血淋与尿血的共同症状有
反映肾血流量的试验为
目前我国的建筑工程预算造价审核,一般常用()。
《出入境检验检疫机构实施检验检疫的进出境商品目录》中商品的“海关监管条件”为“A”,表示( )。
计数抽样中,衡量批质量水平的有()。
“三套碗”是锡伯族的特色美食。()
我国对于基金会的设立采取的原则是()。
以下叙述中正确的是
Comparedwithhispeers,heisinpoorhealthnow,______(这与他不健康的生活方式并非没有关系).
最新回复
(
0
)