動手學深度學習v2-09-04-softmax迴歸的從零開始實現¶
阿新 • • 發佈:2021-11-04
https://leetcode-cn.com/problems/er-cha-shu-de-shen-du-lcof/
大體的思路都是一樣的,但是程式碼有兩種寫法,值得自己去學習
- 方法一:
class Solution { public int maxDepth(TreeNode root) { if(root== null) return 0; int res = 0; Queue<TreeNode> queue = new LinkedList<>(); queue.add(root); while(!queue.isEmpty()){ res++; int n = queue.size(); //利用queue中的元素個數來完成遍歷,順便把queue清空,再加入新的 for(int i = 0; i < n; i++){ TreeNode node = queue.poll(); if(node.left != null) queue.add(node.left); if(node.right != null) queue.add(node.right); } } return res; } }
- 第二種方法
tmp我看不懂是什麼意思
class Solution { public int maxDepth(TreeNode root) { if(root == null) return 0; List<TreeNode> queue = new LinkedList<>() { { add(root); } }, tmp; int res = 0; while(!queue.isEmpty()) { tmp = new LinkedList<>(); for(TreeNode node : queue) { if(node.left != null) tmp.add(node.left); if(node.right != null) tmp.add(node.right); } queue = tmp; res++; } return res; } }