day50(12.31)——leetcode面试经典150

112. 路径总和

112. 路径总和

dfs拿下

题目:

题解:

java 复制代码
/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public boolean flag = false;
    public void dfs(TreeNode node, int sum, int targetSum) {
        if(flag == true) {
            return;
        }
        if(node.left == null && node.right == null) {
            if(sum == targetSum) flag = true;
            return;
        }
        if(node.left != null)
        dfs(node.left, sum+node.left.val, targetSum);
        if(node.right != null)
        dfs(node.right, sum+node.right.val, targetSum);
    }

    public boolean hasPathSum(TreeNode root, int targetSum) {
        if(root == null) return false;
        dfs(root,root.val,targetSum);
        return flag;
    }
}
相关推荐
程序员Sunday6 小时前
TypeScript 的 any、unknown、never 有什么区别?
前端·面试·typescript
小 黄 鸡7 小时前
HashMap 面试必会知识点详解(JDK 8)
java·面试·职场和发展
程序员Sunday12 小时前
ES Module 和 CommonJS 有什么区别?循环依赖时会发生什么?
前端·javascript·面试
溯原的技术笔记12 小时前
JavaScript 闭包
面试
无敌贵点大王12 小时前
嵌入式软件面试经(自用)
c语言·stm32·单片机·学习·mongodb·面试·职场和发展
救救孩子把12 小时前
AI面试八股文-07_6-向量数据库索引详解
数据库·人工智能·面试·向量数据库·hnsw
程序 代码狂人13 小时前
数据开发面试【问答完整版|带深挖追问 + 扩展回答】
面试·职场和发展
江华森13 小时前
Web漏洞与中间件框架漏洞实战详解
面试
浅念-15 小时前
动态规划:线性DP——多状态DP与子数组专题笔记
c++·笔记·算法·leetcode·职场和发展·动态规划·力扣
美味蛋炒饭.16 小时前
java八股面试(3)
java·开发语言·面试