leetcode 404. Sum of Left Leaves
来源:互联网 发布:手机全屏时钟软件 编辑:程序博客网 时间:2024/06/01 19:29
Find the sum of all left leaves in a given binary tree.
Example:
3 / \ 9 20 / \ 15 7There are two left leaves in the binary tree, with values 9 and 15 respectively. Return 24.注意题意是左子叶,是叶子!!
package leetcode;public class Sum_of_Left_Leaves_404 {int sum=0;public int sumOfLeftLeaves(TreeNode root) {if(root==null){return 0;}DFS(root,false);return sum;}public void DFS(TreeNode node,Boolean isLeft){if(node.left==null&&node.right==null){if(isLeft==true){sum+=node.val;}return;}if(node.left!=null){DFS(node.left,true);}if(node.right!=null){DFS(node.right,false);}}public static void main(String[] args) {// TODO Auto-generated method stubSum_of_Left_Leaves_404 s=new Sum_of_Left_Leaves_404();TreeNode root=new TreeNode(1);root.left=new TreeNode(2);root.right=new TreeNode(3);root.left.left=new TreeNode(4);root.left.right=new TreeNode(5);System.out.println(s.sumOfLeftLeaves(root));}}我用的DFS递归,大神用的和我差不多,还有用BFS,对每个treenode进行遍历,也是可以的。
public class Solution { public int sumOfLeftLeaves(TreeNode root) { if(root == null || root.left == null && root.right == null) return 0; int res = 0; Queue<TreeNode> queue = new LinkedList<>(); queue.offer(root); while(!queue.isEmpty()) { TreeNode curr = queue.poll(); if(curr.left != null && curr.left.left == null && curr.left.right == null) res += curr.left.val; if(curr.left != null) queue.offer(curr.left); if(curr.right != null) queue.offer(curr.right); } return res; }}
阅读全文
0 0
- LeetCode笔记:404. Sum of Left Leaves
- 【leetcode】404. Sum of Left Leaves【E】
- LeetCode—404. Sum of Left Leaves
- [LeetCode]404. Sum of Left Leaves
- Leetcode 404. Sum of Left Leaves
- LeetCode 404. Sum of Left Leaves
- 404. Sum of Left Leaves - leetcode
- [LeetCode]--404. Sum of Left Leaves
- LeetCode 404. Sum of Left Leaves
- [leetcode]404. Sum of Left Leaves
- LeetCode-404. Sum of Left Leaves
- LeetCode 404. Sum of Left Leaves
- LeetCode 404. Sum of Left Leaves
- leetcode 404. Sum of Left Leaves
- leetcode(88).404. Sum of Left Leaves
- 【LeetCode】 404. Sum of Left Leaves
- leetcode 404. Sum of Left Leaves
- [Leetcode]404. Sum of Left Leaves
- 使用Axis2开发webservice服务端接口+axis开发的客户端调用
- Tkinter 学习笔记 —— 标准属性
- C++__自定义数据类型
- 时间合理的分配给自己的提示
- Android Studio中新增整体的activity类文件,重新编译后提示“程序包R不存在”解决
- leetcode 404. Sum of Left Leaves
- Word快捷键大全
- SyncAdapter同步机制
- transient的用途
- 机器学习
- 如何成为一名真正的数据分析师或者数据工程师
- Locally weighted linear regression局部加权线性回归
- c#的几个基本概念
- 抽象代数学习笔记(2)关系