网站建设 源美设计做游戏推广网站
网站建设 源美设计,做游戏推广网站,中企动力做的网站怎么登陆,网络会议104. 二叉树的最大深度
简单
给定一个二叉树 root #xff0c;返回其最大深度。
二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1#xff1a; 输入#xff1a;root [3,9,20,null,null,15,7]
输出#xff1a;3
示例 2#xff1a;
输入 } // 2. 问左孩子有多高 int lDepth maxDepth(root.left); // 3. 问右孩子有多高 int rDepth maxDepth(root.right); // 4. 选高的那个加上自己这一层汇报给上级 return Math.max(lDepth, rDepth) 1; } }⚡ 快速复习 CheckList (易错点 扩展)[ ]DFS vs BFSDFS (本解法)代码短$O(H)$ 空间栈深度。BFS (层序遍历)使用Queue。每遍历完一层depth。虽然代码长一点但思路也很直观。如果面试官问“不用递归怎么做”就写 BFS。[ ]时间复杂度因为每个节点都必须被访问一次才能确定最大深度。[ ]空间复杂度。平均情况 $O(\log N)$最坏情况退化成链表 $O(N)$。️ 数字演练树结构3 / \ 9 20 / \ 15 7maxDepth(9): 左null(0), 右null(0) -max(0,0)11。maxDepth(15):max(0,0)11。maxDepth(7):max(0,0)11。maxDepth(20): 左(15返回1), 右(7返回1) -max(1,1)12。maxDepth(3): 左(9返回1), 右(20返回2) -max(1,2)13。结果3。