104. Maximum Depth of Binary Tree - Easy 前往題目 之前寫的文章 思路這題有好多種寫法,光是DFS就可以寫成幾個不同的樣子 邊走邊紀錄深度 Code自己寫的 class Solution { int res = 1; public int maxDepth(TreeNode root) { if (root == null) return 0; dfs(root, 1); return res; } private void dfs(TreeNode node, int depth) { if (node == null) return; res = Math.max(res, depth); dfs(node.left, depth + 1); dfs(node.right, depth + 1); return; } } 根據上面的自己改造了一下 class Solution { public int maxDepth(TreeNode root) { if (root == null) return 0; return dfs(root); } private int dfs(TreeNode node) { if (node == null) return 0; int left = dfs(node.left) + 1; int right = dfs(node.right) + 1; return Math.max(left, right); } } NeetCode大大的解法,直接把原method當作dfs class Solution { public int maxDepth(TreeNode root) { if (root == null) { return 0; } return 1 + Math.max(maxDepth(root.left), maxDepth(root.right)); } } Leetcode > Easy #Leetcode #心得 #Binary Tree #Depth-First Search #Breadth-First Search #Tree 104. Maximum Depth of Binary Tree - Easy https://f88083.github.io/2024/03/23/104-Maximum-Depth-of-Binary-Tree-Easy/ 作者 Simon Lai 發布於 2024年3月23日 許可協議 1603. Design Parking System - Easy 上一篇 5. Longest Palindromic Substring — Medium 下一篇 Please enable JavaScript to view the comments