数据结构拓展习题:二叉树的带权路径长度WPL
题目:二叉树的带权路径长度(WPL)是二叉树中所有叶结点的带权路径长度之和。给定一棵二叉树T,采用二叉链表存储, 结点结构为:(lchild,weight,rchild) ,其中叶结点的weight域保存该结点的非负权值。设root为指向T的根结点的指针,请设计求T的WPL的算法。



int WPL(BiTree T, int depth)
{
if (T == NULL)
return 0;
if (T->lchild == NULL && T->rchild == NULL)
return T->data * depth;
return WPL(T->lchild, depth + 1) + WPL(T->rchild, depth + 1);
}