2007上半年软件设计师下午试题[9]

软件设计师 责任编辑:gengdaquan 2010-03-04

添加老师微信

备考咨询

加我微信

摘要:函数placeBoosters(TreeNode*root)的功能是:对于给定树型分布网络中各个节点,计算其信号衰减量的最大值,并确定应在树中的哪些节点放置信号放大器。全局变量Tolerance保存信号衰减容忍值。树的节点类型定义如下:typedefstructTreeNode{intid;/*当前节点的识别号*/intChildNum;/*当前节点的子节点数

函数placeBoosters(TreeNode  *root)的功能是:对于给定树型分布网络中各个节点,计算其信号衰减量的最大值,并确定应在树中的哪些节点放置信号放大器。

全局变量Tolerance保存信号衰减容忍值。

树的节点类型定义如下:

typedef struct TreeNode {

    int id;  /*当前节点的识别号*/

  int ChildNum;  /*当前节点的子节点数目*/

    int d; /*父节点到当前节点的信号衰减值*/

struct TreeNode **childptr;/*向量,存放当前节点到其所有子节点的指针*/

int M; /*当前节点到其所有子节点的信号衰减值中的最大值*/

    bool boost;  /*是否在当前节点放置信号放大器的标志*/

}TreeNode;

 

[C语言函数]

void placeBoosters(TreeNode *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]  [2]  [3]  [4]  [5]  [6]  [7]  [8]  [9]  [10]  [11]  [12]  [13]  

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

软考备考资料免费领取

去领取