标签:class HERE ISE nod linked bin amp res color
Find the sum of all left leaves in a given binary tree.
Example:
3 / 9 20 / 15 7 There are two left leaves in the binary tree, with values 9 and 15 respectively. Return 24.
Solution 1:
BFS
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ class Solution { public int sumOfLeftLeaves(TreeNode root) { int res = 0; if (root == null) { return res; } Queue<TreeNode> queue = new LinkedList<>(); queue.offer(root); while (!queue.isEmpty()) { TreeNode cur = queue.poll(); if (cur.left != null) { if (cur.left.left == null && cur.left.right == null) { res += cur.left.val; } else { queue.add(cur.left); } } if (cur.right != null) { queue.add(cur.right); } } return res; } }
Solution 2:
DFS
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ class Solution { public int sumOfLeftLeaves(TreeNode root) { if (root == null) { return 0; } int res = 0; if (root.left != null) { if (root.left.left == null && root.left.right == null) { res += root.left.val; } else { res += sumOfLeftLeaves(root.left); } } res += sumOfLeftLeaves(root.right); return res; } }
标签:class HERE ISE nod linked bin amp res color
原文地址:https://www.cnblogs.com/xuanlu/p/12148649.html