513. Find Bottom Left Tree Value - LeetCode
阿新 • • 發佈:2018-09-02
https 分享 new link 按層遍歷 problems eno lee find
Question
513. Find Bottom Left Tree Value
Solution
題目大意:
給一個二叉樹,求最底層,最左側節點的值
思路:
按層遍歷二叉樹,每一層第一個被訪問的節點就是該層最左側的節點
Java實現:
public int findBottomLeftValue(TreeNode root) { Queue<TreeNode> nodeQueue = new LinkedList<>(); nodeQueue.offer(root); // 向隊列追加元素,如果隊列滿返回false int left = -1; while (!nodeQueue.isEmpty()) { int curLayerSize = nodeQueue.size(); for (int i = 0; i < curLayerSize; i++) { TreeNode cur = nodeQueue.poll(); // 移除並返回隊列頭部元素,隊列為空返回 null if (i == 0) left = cur.val; // 當前層的第一個節點最左結點就是最左側節點 if (cur.left != null) nodeQueue.offer(cur.left); if (cur.right != null) nodeQueue.offer(cur.right); } } return left; }
513. Find Bottom Left Tree Value - LeetCode