Java | Leetcode Java题解之第404题左叶子之和

题目:

题解:

java 复制代码
class Solution {
    public int sumOfLeftLeaves(TreeNode root) {
        if (root == null) {
            return 0;
        }

        Queue<TreeNode> queue = new LinkedList<TreeNode>();
        queue.offer(root);
        int ans = 0;
        while (!queue.isEmpty()) {
            TreeNode node = queue.poll();
            if (node.left != null) {
                if (isLeafNode(node.left)) {
                    ans += node.left.val;
                } else {
                    queue.offer(node.left);
                }
            }
            if (node.right != null) {
                if (!isLeafNode(node.right)) {
                    queue.offer(node.right);
                }
            }
        }
        return ans;
    }

    public boolean isLeafNode(TreeNode node) {
        return node.left == null && node.right == null;
    }
}
相关推荐
ZePingPingZe16 小时前
不使用Spring事务的管理—原生JDBC实现事务管理
java·数据库·spring
吃喝不愁霸王餐APP开发者16 小时前
外卖API对接过程中时间戳与时区处理的最佳实践(避免核销失效)
java
抹除不掉的轻狂丶16 小时前
Java 日志框架完整指南:发展历史、核心组成与最佳实践
java·开发语言·python
林涧泣16 小时前
使用Java输出HelloWorld
java·开发语言
叫致寒吧17 小时前
Dockerfile
java·spring cloud·eureka
rannn_11117 小时前
【SQL题解】力扣高频 SQL 50题|DAY5
数据库·后端·sql·leetcode·题解
鸽鸽程序猿17 小时前
【刷题册】三
java·刷题
ruleslol17 小时前
java中调用uri请求的几种常见的方法
java
资生算法程序员_畅想家_剑魔17 小时前
Java常见技术分享-10-装饰器模式
java·开发语言·装饰器模式
ss27317 小时前
ThreadPoolExecutor七大核心参数:从源码看线程池的设计
java·数据库·算法