二叉树带权路径长度算法详解.pdfVIP

  • 0
  • 0
  • 约3.13千字
  • 约 3页
  • 2026-09-01 发布于北京
  • 举报

本小节内容

2014年41题讲解

2014年41题讲解

2014年

41.(13分)二叉树的带权路径长度(WPL)是二叉树中所有叶结点的带权路径长度

之和。给定一棵二叉树T,采用二叉链表,结点结构如下:

leftweightright

其中叶结点的weight域保存该结点的非负权值。设root为指向T的根结点的指针,请设计

求T的WPL的算法,要求:

1)给出算法的基本设计思想。

2)使用C或C++语言,给出二叉树结点的数据类型定义。

3)根据设计思想,采用C或C++语言描述算法,关键之处给出注释。

解析:

树的带权路径长度(WeightedPathLengthofTree,简记为WPL

考查二叉树的带权路径长度,二叉树的带权路径长度为每个叶子结点的深度与权值之积的总

和,可以使用先序遍历或层次遍历解决问题。

1)算法的基本设计思想:

①基于先序递归遍历的算法思想是用一个static变量记录wpl,把每个结点的深度作为

递归函数的一个参数传递,算法步骤如下:

若该结点是叶子结点,那么变量wpl加上该结点的深度与权

文档评论(0)

1亿VIP精品文档

相关文档