测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A45681. 二叉树的深度给定一棵二叉树, 求该二叉树的深度二叉树深度定义: 从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径, 最长路径的节点个数为树的深度输入第一行是一个整数 n, 表示二叉树的结点个数。 二叉树结点编号从 1到 n, 根结点为 1, n <= 10 接下来有 n 行, 依次对应二叉树的 n 个节点。 每行有两个整数, 分别表示该节点的左儿子和右儿子的节点编号。 如果第一个(…

填空题 困难

题目描述

二叉树的深度

给定一棵二叉树, 求该二叉树的深度二叉树深度定义: 从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径, 最长路径的节点个数为树的深度

输入

第一行是一个整数 n, 表示二叉树的结点个数。 二叉树结点编号从 1

到 n, 根结点为 1, n <= 10 接下来有 n 行, 依次对应二叉树的 n 个节

点。 每行有两个整数, 分别表示该节点的左儿子和右儿子的节点编

号。 如果第一个(第二个) 数为-1 则表示没有左(右) 儿子

输出

输出一个整型数, 表示树的深度

样例输入

3

2 3

-1 -1

-1 -1

样例输出

2

参考答案

//递归方式 public int TreeDepth(TreeNode root) { if(root == null){ return 0; } TreeNode node = root; int left = TreeDepth(node.left); int right = TreeDepth(node.right); int res = left=left>right?left:right; return res+1; }
上一题 下一题