/** * Definition for binary tree * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ public class Solution { public int maxDepth(TreeNode root) { if(root==null){ return 0; } return maxDep(root, 1); } private int maxDep(TreeNode node, int pDepth){ int leftDep = pDepth; int rightDep = pDepth; int cDepth = ++pDepth; if(node.left!=null){ leftDep = maxDep(node.left, cDepth); } if(node.right!=null){ rightDep = maxDep(node.right, cDepth); } return leftDep>rightDep?leftDep:rightDep; } }
相关推荐
LeetCode去除数组重复元素 Arithmetic-Swift 一些算法的swift实现 桶排序 冒泡排序 快速排序 ##正好看见LeetCode可以刷Swift的题目 开始慢慢刷 swift有playground 做起来还是相当方便的 已完成题目 ----2016.9.30 两...
- 计算二叉树的最大深度(Maximum Depth of Binary Tree)考察递归的使用。 - 平衡二叉树(Balanced Binary Tree)问题需要检查一棵树是否是平衡的。 **位操作(Bit Manipulation)** 位操作是高级的编程技能,涉及...
leetcode 答案 leetcode 08/18 Unique Paths 应该是简单的数学排列组合问题,提炼一下其实就一句话:有m个黑球,n个白球,有多少种不同的排列方式。 我数学太差,没找到答案,直接上了动态规划。 Unique Paths II ...
* Depth of Binary Tree:给定一个二叉树,返回树的深度。这个题目需要使用递归的思想,将树分解成更小的子树,并找到最大深度。 * Construct Binary Tree:给定一个前序遍历的数组,构建二叉树。这个题目需要使用...
1. **二叉树的最大深度(Maximum Depth of Binary Tree)**:递归计算二叉树的最大深度。 2. **将有序数组转换为二叉搜索树(Convert Sorted Array to Binary Search Tree)**:利用有序数组的特点,通过递归构建...
* Maximum Depth of Binary Tree:该题目要求计算二叉树的最大深度。解决该题目需要使用深度优先搜索算法,递归地计算每个节点的深度,然后返回最大深度。 * Path Sum:该题目要求判断一棵二叉树中是否存在路径和为...
LeetCode 104题,通常被称为“最大深度的二叉树”(Maximum Depth of Binary Tree)。这是一道关于数据结构——二叉树的问题,要求计算给定二叉树的最大深度。二叉树是一种非线性数据结构,每个节点最多有两个子节点...
"二叉树的最大路径和"(Maximum Depth of Binary Tree)要求找到从根节点到任意叶子节点的最大路径。 5. **哈希表**:哈希表提供了快速的查找和插入操作,常用于解决集合问题。"哈希表实现LRU缓存策略"(LRU Cache...
二叉树问题如"二叉树的最大路径和"(Maximum Depth of Binary Tree)要求找到从根节点到叶节点的最长路径,可以使用深度优先搜索(DFS)或广度优先搜索(BFS)来解决。 哈希表是LeetCode中另一重要工具,它提供快速...