下图的先序序列为:AB#D##CE##F##
【输入形式】二叉树的先序遍历序列
【输出形式】二叉树的先序、中序和后序遍历结果,每种遍历结果输出一行,然后输出二叉树的高度、结点数、叶节点数、最大值,每个结果一行。
【样例输入】AB#D##CE##F##
【样例输出】
ABDCEF
BDAECF
DBEFCA
3
6
3
F
二叉树的最大值是什么意思呀,为什么输出的是F呢?MAX函数需要怎么写

数据结构 c语言, 二叉树的最大值
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 爱吃菠萝12138 2022-05-17 19:26关注
反推出二叉树如下:
A / \ B C \ / \ D E F
Q1:二叉树的最大值是什么意思呀?
A1:指二叉树所有节点中值最大的那个。
Q2:为什么输出的是F呢?
A2:因为ABCDEF中F最大。
Q3:MAX函数怎么写?
A3:int maxTreeNode(TreeNode root) { if(root.left == null && root.right == null) return root.val; else if(root.left != null && root.right == null) return root.val > maxTreeNode(root.left) ? root.val : maxTreeNode(root.left); else if(root.left == null && root.right != null) return root.val > maxTreeNode(root.right) ? root.val : maxTreeNode(root.right); else { if(root.val > maxTreeNode(root.left)) return root.val > maxTreeNode(root.right) ? root.val : maxTreeNode(root.right); else return maxTreeNode(root.left) > maxTreeNode(root.right) ? maxTreeNode(root.left) : maxTreeNode(root.right); } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 3无用