6-1 二叉树度为2的结点求和 (16 分)
实现一个函数,返回二叉树bt中度为2的结点的数值之和。
函数接口定义:
int sumDCNodes(struct BinTree *bt);
其中二叉树定义如下:
struct BinTree{
int data;
struct BinTree *left;
struct BinTree *right;
};
题目保证二叉树中所有元素均为整数且各元素之和在整型范围内。
裁判测试程序样例:
#include "stdio.h"
#include "stdlib.h"
struct BinTree{
int data;
struct BinTree *left;
struct BinTree *right;
};
struct BinTree* createNode(int item){ //创建结点
/* 函数实现细节省略*/
}
struct BinTree* findNode(struct BinTree *bt, int item){ //查找结点
/* 函数实现细节省略*/
}
int insert(struct BinTree *bt, int parent, int dir, int item){ //插入结点
/* 实现细节仅供参考 */
struct BinTree *tmp;
tmp = findNode(bt, parent);
if(!tmp) return 0;
if(dir == 0){
if(tmp->left) return 0;
tmp->left = createNode(item);
if(tmp->left == NULL) return 0;
} else{
if(tmp->r

该博客介绍了如何实现一个函数,计算二叉树中度为2的节点(有两个子节点的节点)的数值之和。函数接口被定义,并提供了裁判测试程序的输入和输出样例。
最低0.47元/天 解锁文章
1531

被折叠的 条评论
为什么被折叠?



