P8 叶节点求和 (15 分)

P8 叶节点求和 (15 分)
对给定的有N个节点(N>=0)的二叉树,求叶节点元素之和。

输入格式:
第一行是一个非负整数N,表示有N个节点

第二行是一个整数k,是树根的元素值

接下来有N-1行,每行是一个新节点,格式为 r d e 三个整数,

r表示该节点的父节点元素值(保证父节点存在);d是方向,0表示该节点为父节点的左儿子,1表示右儿子;e是该节点的元素值。

输出格式:
树中叶节点元素之和 (保证在整型变量范围之内)。

输入样例:
20
/
10 25

对于图片中的二叉树:

3
20
20 0 10
20 1 25

输出样例:

35

先判断叶子结点,然后对值进行相加即可。递归调用,还是很好理解的。

int rsumofLeave(BinNode *r){int sum =0;if(!r); //空树else{if(!r->left && !r->right)  //看是否是叶子sum +=r->data;sum +=rsumofLeave(r-


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部