二叉树最深层次元素求和(基于层序遍历算法)
作者:互联网
给定任意二叉树,请计算最深层元素的和.
输入
按先序遍历顺序输入待初始化二叉树的结点,若节点的子树为空,则对应的位置为0.
输出
请输出二叉树最深层元素的和.
输入示例
1 3 5 0 0 3 0 0 2 0 9 0 0
该示例对应的二叉树为:
1
/ \
3 2
/ \ \
5 3 9
输出示例
17
[程序代码]
#include<stdio.h>
#include<stdlib.h>
#define OK 1
#define ERROR 0
#define Yes 1
#define No 0
typedef short ElemType;
typedef short Status;
struct BiTreeNode/* 二叉树结点定义 */
{
ElemType data;
struct BiTreeNode *LChild;/* 左孩子指针 */
struct BiTreeNode *RChild;/* 右孩子指针 */
};
struct QueueNode/* 链队列结点 */
{
struct BiTreeNode *pointer;/* 存储二叉树的根结点地址 */
struct QueueNode *next;
};
struct QueueInfo/* 链队列信息结点 */
{
QueueNode *Qfront;/* 队头指针 */
QueueNode *Qrear;/* 队尾指针 */
};
/* */
void CreateBiTree(BiTreeNode* &T);
Status InitQueue(
标签:结点,遍历,struct,层序,BiTreeNode,二叉树,QueueNode,define 来源: https://blog.csdn.net/weixin_42048463/article/details/117882106