首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
二叉树的带权路径长度(WPL)是二叉树中所有叶结点的带权路径长度之和。给定一棵二叉树T,采用二叉链表存储,结点结构为: 其中叶结点的weight域保存该结点的非负权值。设root为指向T的根结点的指针,请设计求T的WPL的算法,要求: 根据设计思想,采
二叉树的带权路径长度(WPL)是二叉树中所有叶结点的带权路径长度之和。给定一棵二叉树T,采用二叉链表存储,结点结构为: 其中叶结点的weight域保存该结点的非负权值。设root为指向T的根结点的指针,请设计求T的WPL的算法,要求: 根据设计思想,采
admin
2015-12-30
53
问题
二叉树的带权路径长度(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
学硕统考专业
相关试题推荐
下列内容,与垄断组织出现有关的是()。①控制一个或几个部门商品的生产、价格和市场②促进了大工业的发展,在某种程度上适应了生产力发展的需要③干预、控制国家的政治、经济生活④积极向外扩张,从经济上瓜分世界
兵家是专门研究军事理论和实践的学派,主要代表人物是战国中期齐国的(),他所著的兵书是一部杰出的古代兵书。
以下关于玛雅天文学成就的叙述,正确的是()。①玛雅人创造的“玛雅历”是一种太阳历。②玛雅人的历法,与宗教祭祀有着密切联系。③奇钦.伊查天文观象台是玛雅天文学的伟大成就。④玛雅人的历法中,采用了12进位法。
美国主张建立国际联盟的主要目的是()。
1934年9月苏联加入国联,对此说法错误的一项是()。
下列国家中不是不结盟运动发起者的是()。
下列各组条约的时间排列顺序正确的是()。①《布列斯特条约》②《色佛尔条约》③《九国公约》④《洛桑条约》
在平衡二叉树中的每个结点上增设一个Lsize域,其值为它的左子树中的结点个数加1,试写一个时间复杂度为O(logn)的算法,确定树中第k个结点的位置。
若二叉树的前序序列为DABCEFG,中序序列为BACDFGE,则其层次序列为()。
有关虚拟设备的论述中,正确的是()。
随机试题
有关肾区疼痛,下列哪项不正确?
泼尼松和泼尼松龙体内过程的主要区别在于
以下不属于土地资源的经济特性的是()。
自主选择权是消费者的重要权利,下列选项中,符合自主选择权内容的是()。
对于接待规格理解正确的是()。
沟通对于一个项目的成功有非常重要的作用。沟通按照载体等不同的方法可以分为不同的种类,而且不同的方式有不同的作用。通过沟通,可以从其他人那里得到更多的信息,可以了解不同层次、不同角度的想法和建议,为项目领导思考问题和做出决策提供更多的参考和依据,为各级主管制
警容风纪是一种思想规范。()
某模拟图站的主页地址是http://localhost:65531/ExamWeb/index.htm,打开此主页,浏览“中国地理”页面,将“中国的自然地理数据”的页面内容以文本文件的格式保存到考生目录下,命名为“zgdl.txt”。
Thenineteenthcenturybroughtaboutthegreatestexpansionofwealththeworldhadeverknown.Itssourceslayintheindustria
Geographyisthestudyoftherelationshipbetweenpeopleandtheland.Geographerscompareandcontrast(1)_____placesonthee
最新回复
(
0
)