【报班】大三考研
红包
【考研】专业课HOT
26考研
【MBA】管综备考
【申硕】同等学力
【报录比】查询
计划
【真题】历年考试
计划
【大三】全科高分
预备
【在职】双证硕士
26考研
【测评】英语|政治
免费
【AI】智能择校
免费
【.zip】资料下载
精
扫码加入训练营
牢记核心词
学习得礼盒
【题目】
41.(13分)二叉树的带权路径长度(WPL)是二叉树中所有叶结点的带权路径长度之和。给定一棵二叉树T,采用二叉链表存储,结点结构为:,其中叶结点的weight域保存该结点的非负权值。设root为指向T的根结点的指针,请设计求T的WPL的算法。要求:
(1)给出算法的基本设计思想;
(2)使用C或C++语言,给出二叉树结点的数据类型定义;
(3)根据设计思想,采用C或C++语言描述算法,关键之处给出注释。
【答案参考】:
【答案一】
(1)算法的设计思想:
本问题可采用递归算法实现。根据定义:
二叉树的WPL值=树中全部叶结点的带权路径长度之和
=根结点左子树中全部叶结点的带权路径长度之和+根结点右子树中全部叶结点的带权路
径长度之和
叶结点的带权路径长度=该结点的weight域的值×该结点的深度
设根结点的深度为0,若某结点的深度为d时,则其孩子结点的深度为d+1。
(2)算法中使用的二叉树结点的数据类型定义如下:
typedef struct node
{
int weight:
struct node * left,* right;
} BTree;
(3)算法实现:
int WPL(BTree * root) //根据WPL的定义采用递归算法实现
{ return WPL1(root,0);
}
int WPLl (BTree * root,int d) //d为结点深度
{ if(root->left==NULL && root->right==NULL)
return(root->weight * d);
else
return(WPL1(root->left,d+1)+WPLl (root->right,d+1));
}
【答案二】
(1)算法的设计思想:
若借用非叶结点的weight域保存其孩子结点中weight域值的和,则树的WPL等于树中所有非叶结点weight域值之和。
采用后序遍历策略,在遍历二叉树T时递归计算每个非叶结点的weight域的值,则树T的WPL等于根结点左子树的WPL加上右子树的WPL,再加上根结点中weight域的值。
(2)算法中使用的二叉树结点的数据类型定义同【答案一】。
(3)算法实现:
int WPL(BTree*root) //基于递归的后序遍历算法实现
{ int w_l,w_r;
if(root->left==NULL && root->right==NULL)
return 0:
else
{ w_l=WPL(root->left); //计算左子树的WPL
w_r=WPL(root->right); //计算右子树的WPL
root->weight=root->left->weight + root->right->weight;//填写非叶结点的weight域
return(w_l+w_r + root->weight);//返回WPL值
}
}
本文关键字: 二叉树的带权路径长度(WPL)
资料下载
2014年-2024年考研历年真题汇总
发布时间:2024-04-25扫码添加【考研班主任】
即可领取资料包
考研大纲PDF电子版下载-历年(附解析)
发布时间:2024-04-25扫码添加【考研班主任】
即可领取资料包
2025年考研政数英备考资料zip压缩包
发布时间:2024-04-25扫码添加【考研班主任】
即可领取资料包
考研英语大纲词汇5500打印版(基础必备)
发布时间:2024-04-25扫码添加【考研班主任】
即可领取资料包
新东方在线考试模拟题【12套】
发布时间:2024-04-25扫码添加【考研班主任】
即可领取资料包
2025年考研专业课知识点总结
发布时间:2024-04-25扫码添加【考研班主任】
即可领取资料包
新东方考研资料下载地址
发布时间:2023-05-17新东方在线考研资料合集
下载方式:微信扫码,获取网盘链接
目录:
1.2013-2023年近10年政数英真题及解析PDF版(新东方)
2.2013-2023年专业课考试历年真题及解析PDF版
3.24考研复习备考资料大合集:大纲+备考资料+词汇书+考前押题+自命题
资料介绍:
1.2013-2023年近10年政数英真题及解析PDF版(新东方)
、
2.2013-2023年专业课考试历年真题及解析PDF版
3.24考研复习备考资料大合集
3.24考研复习备考资料:考研大纲
3.24考研复习备考资料:政数英备考资料+自命题真题
------------------
考研备考过程中,尤其是专业课部分,参考往年的考试真题,对于我们的复习有更好的帮助。北京大学考研真题资料都有哪些?小编为大家进行了汇总。
北京大学考研真题资料-公共课
北京大学考研真题资料-专业课
以上就是关于“北京大学考研真题资料下载(历年汇总)”的整理,更多考研资料下载,请关注微信获取下载地址。
2024考研公共课必背知识点汇总
发布时间:2023-01-03扫码添加【考研班主任】
即可领取资料包
2013-2023考研历年真题汇总
发布时间:2023-01-03扫码添加【考研班主任】
即可领取资料包
考研英语大纲词汇(PDF可打印)
发布时间:2023-01-03扫码添加【考研班主任】
即可领取资料包
2024考研专业课知识点总结
发布时间:2023-01-03扫码添加【考研班主任】
即可领取资料包
2023考研政治 内部押题 PDF
发布时间:2022-11-16扫码添加【考研班主任】
即可领取资料包
徐涛:23考研预测六套卷
发布时间:2022-11-16扫码添加【考研班主任】
即可领取资料包
考研政数英冲刺资料最新整理
发布时间:2022-11-16扫码添加【考研班主任】
即可领取资料包
23考研答题卡模板打印版
发布时间:2022-11-16扫码添加【考研班主任】
即可领取资料包
2023考研大纲词汇5500PDF电子版
发布时间:2022-07-28扫码添加【考研班主任】
即可领取资料包
考研历年真题(公共课+专业课)
发布时间:2022-07-28扫码添加【考研班主任】
即可领取资料包
考研英语阅读100篇附解析及答案
发布时间:2022-01-07扫码添加【考研班主任】
即可领取资料包
新东方考研学霸笔记整理(打印版)
发布时间:2022-01-07扫码添加【考研班主任】
即可领取资料包
2001-2021年考研英语真题答案(可打印版)
发布时间:2022-01-07扫码添加【考研班主任】
即可领取资料包
考研英语词汇5500(完整版下载)
发布时间:2022-01-07扫码添加【考研班主任】
即可领取资料包
2022考研政审表模板精选10套
发布时间:2022-01-07扫码添加【考研班主任】
即可领取资料包
历年考研真题及答案 下载
发布时间:2021-12-09扫码添加【考研班主任】
即可领取资料包
考研政审表模板汇总
发布时间:2020-06-17扫码添加【考研班主任】
即可领取资料包
近5年考研英语真题汇总
发布时间:2020-06-17扫码添加【考研班主任】
即可领取资料包
考研英语大纲词汇5500
发布时间:2020-06-17扫码添加【考研班主任】
即可领取资料包
2022考研12大学科专业排名汇总
发布时间:2019-11-21扫码添加【考研班主任】
即可领取资料包
2023考研政治复习备考资料【珍藏版】
发布时间:2019-11-21扫码添加【考研班主任】
即可领取资料包
考研英语万能模板+必备词汇+范文
发布时间:2019-11-21扫码添加【考研班主任】
即可领取资料包
考研数学一、二、三历年真题整理
发布时间:2019-11-21扫码添加【考研班主任】
即可领取资料包
添加班主任领资料
添加考研班主任
免费领取考研历年真题等复习干货资料
推荐阅读
更多>>2024年考研初试考试结束后,相信同学们都比较关心考后的真题以及答案了。新东方在线第一时间为大家整理了本次考试对应的真题以及答案解
2024年考研初试考试结束后,相信同学们都比较关心考后的真题以及答案了。新东方在线第一时间为大家整理了本次考试对应的真题以及答案解
2024年考研初试考试结束后,相信同学们都比较关心考后的真题以及答案了。新东方在线第一时间为大家整理了本次考试对应的真题以及答案解
2024年考研初试考试结束后,相信同学们都比较关心考后的真题以及答案了。新东方在线第一时间为大家整理了本次考试对应的真题以及答案解
2024年考研初试考试结束后,相信同学们都比较关心考后的真题以及答案了。新东方在线第一时间为大家整理了本次考试对应的真题以及答案解
资料下载
更多>>扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
新东方在线考研资料合集
下载方式:微信扫码,获取网盘链接
目录:
1.2013-2023年近10年政数英真题及解析PDF版(新东方)
2.2013-2023年专业课考试历年真题及解析PDF版
3.24考研复习备考资料大合集:大纲+备考资料+词汇书+考前押题+自命题
资料介绍:
1.2013-2023年近10年政数英真题及解析PDF版(新东方)
、
2.2013-2023年专业课考试历年真题及解析PDF版
3.24考研复习备考资料大合集
3.24考研复习备考资料:考研大纲
3.24考研复习备考资料:政数英备考资料+自命题真题
------------------
考研备考过程中,尤其是专业课部分,参考往年的考试真题,对于我们的复习有更好的帮助。北京大学考研真题资料都有哪些?小编为大家进行了汇总。
北京大学考研真题资料-公共课
北京大学考研真题资料-专业课
以上就是关于“北京大学考研真题资料下载(历年汇总)”的整理,更多考研资料下载,请关注微信获取下载地址。
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
扫码添加【考研班主任】
即可领取资料包
阅读排行榜
相关内容