首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
二叉树的带权路径长度(WPL)是二叉树中所有叶结点的带权路径长度之和。给定一棵二叉树T,采用二叉链表存储,结点结构为: 其中叶结点的weight域保存该结点的非负权值。设root为指向T的根结点的指针,请设计求T的WPL的算法,要求: 根据设计思想,采
二叉树的带权路径长度(WPL)是二叉树中所有叶结点的带权路径长度之和。给定一棵二叉树T,采用二叉链表存储,结点结构为: 其中叶结点的weight域保存该结点的非负权值。设root为指向T的根结点的指针,请设计求T的WPL的算法,要求: 根据设计思想,采
admin
2015-12-30
96
问题
二叉树的带权路径长度(WPL)是二叉树中所有叶结点的带权路径长度之和。给定一棵二叉树T,采用二叉链表存储,结点结构为:
其中叶结点的weight域保存该结点的非负权值。设root为指向T的根结点的指针,请设计求T的WPL的算法,要求:
根据设计思想,采用C或C++语言描述算法,关键之处给出注释。
选项
答案
算法的代码如下: ①基于先序遍历的算法: int WPL(BiTree root){ return wpl_PreOrder(root,0); } int wpl PreOrder(BiTree root,int deep){ static int wpl=0;//定义一个static变量存储wpl if(root->lchild==NuLL&&root->lchild==NULL)//若为叶结点,累积wpl wpl+=deep*root->weight, if(root->ichiid!;NuLL)//若左子树不空,对左子树递归遍历 wpl_PreOrder(root->ichild,deep+1), if(root->rchiidI=NULL)//若右子树不空,对右于树递归遍历 wpl_PreOrder(root->rchild,deep+1); return wpl; } ②基于层次遍历的算法: #define MaxSize 100//设置队列的最大容量 int wpl LevelOrder(BiTree root){ BiTree q[MaxSize];//声明队列,end1为头指针,end2为尾指针 int end1,end2,//队列最多容纳MaxSize-1个元素 end1=end2=0;//头指针指向队头元素,尾指针指向队尾的后一个元素 int wpl=deep=0;//初始化wpl和深度 BiTree lastNode;//lastNode用来记录当前层的最后一个结点 BiTree newlastNode;//newlastNode用来记录下一层的最后一个结点 lastNode=root;//lastNode初始化为根结点 newlastNode=NULL;//newlastNode初始化为空 q[end2++]=root;//根结点入队 while(end1!=end2)f//层次遍历,若队列不空则循环 BiTree t=q[end1++];//拿出队列中的头一个元素 if(t->ichild==NULL&&t->lchild==NULL){ wpl+=deep*t->weight; }//若为叶结点,统计wpl if(t->ichild!=NULL){//若非叶结点把左结点入队 q[end2++]=t->ichild; newlastNode=t->ichiid; }//并设下一层的最后一个结点为该结点的左结点 if(t->rchild!=NULL){//处理叶结点 q[end2++]=t->rchild; newlastNode=t->rchild; } if(t==lastNode){//若该结点为本层最后一个结点,更新lastNode lastNode=newlastNode; deep+=1;//层数加1 } } return wpl;//返回wpl }
解析
考查二叉树的带权路径长度,二叉树的带权路径长度为每个叶结点的深度与权值之积的总和,可以使用先序遍历或层次遍历解决问题。
转载请注明原文地址:https://kaotiyun.com/show/3BRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
下列关于清朝设置台湾府的叙述,不正确的是()。
1901—1939年间美国历届政府在国内经济活动中职能作用的演变。
元朝在中央设置中书省、地方则设置行中书省,其目的是()。
二战期间,下列四次战役的时间先后顺序是()①莫斯科战役②诺曼底登陆③不列颠之战④阿拉曼战役
把中国第一次工人运动的高潮推向顶点的是()。
晚清时期清帝年号的正确排序是
战时共产主义政策中对后来的工农联盟最能构成威胁的是()。
设计一个算法,求无向图G(采用邻接表存储)的连通分量个数。
某机字长32位,主存容量32MB,按字节编址;该机的Cache采用4路组相联映射方式,Cache容量为16KB,块长为4个字,试回答下列问题:(1)主存地址位数为多少?(2)画出主存地址格式示意图,注明各字段名称及位数。(3)设该Ca
某计算机处理器主频为50MHz,采用定时查询方式控制设备A的I/O,查询程序运行一次所用的时钟周期数至少为500。在设备A工作期间,为保证数据不丢失,每秒需对其查询至少200次,则CPU用于设备A的I/O的时间占整个CPU时间的百分比至少是____。
随机试题
一弹簧刚性系数为k,放在倾角为θ的光滑斜面上。弹簧上端固定,下端与重物A相连,如图所示为平衡位置。若使重物A沿斜面向下移动l距离,则作用于重物A所有功的总和为()。
TheUnitedStatesisfullofcars.Therearestillmanyfamilieswithoutcars,butsomefamilieshavetwoorevenmore.However,
矩阵组织形式代表了围绕产品线组织资源及按职能划分组织资源二者之间的一种平衡。矩阵组织形式的特点有()。
按照计划免疫规定,百、白、破混合疫苗初次免疫时应
药物相互作用对临床药效学的影响A、拮抗作用B、敏感化作用C、作用相加或增加疗效D、增加毒性或不良反应E、协同作用或减少不良反应甲苯磺丁脲与氯噻嗪同时服用
甲、乙两人沿直线从A地步行至B地,丙从B地步行至A地。已知甲、乙、丙三人同时出发,甲和丙相遇后5分钟,乙与丙相遇。如果甲、乙、丙三人的速度分别为85米/分钟、75米/分钟、65米/分钟。问AB两地的距离为多少米?()
某上市公司因披露虚假年度财务报告,导致投资者在证券交易中蒙受重大损失。关于对此承担民事赔偿责任的主体.下列哪一选项是错误的?(2010年试卷三第30题)
2016年7月1日,某公司对一栋办公楼进行装修,此办公楼为经营租赁方式租人,到2019年10月31日合同到期。为装修发生相关支90万元。2016年10月31日,该办公楼装修完工,达到预定可使用状态并交付使用。假定不考虑其他因素,该企业发生的该装修费用对20
我国农村普遍使用的沼气池采用的技术是:
ASCIIisa7-bitcodeusedtorepresentnumeric,alphabetic,andspecialprintablecharacters.Italsoincludescodesforcontro
最新回复
(
0
)