栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

112. 路径总和(简单)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

112. 路径总和(简单)

题目描述:
给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 true ;否则,返回 false 。
叶子节点 是指没有子节点的节点。
思路:这道题有两种方法。
第一种:采用暴力破解的方式,将节点存放在链表上,通过和的比较进行。但是效率低。
第二种:采用递归的方式进行,效率相对比较高。

class Solution {
        public boolean hasPathSum(TreeNode root, int targetSum) {
        //如果树时空的,直接返回false
           if(root==null){
               return false;
           }
           //进行到叶子节点进行比较
           if(root.left==null&&root.right==null){
               return targetSum == root.val;
           }
           return hasPathSum(root.left,targetSum-root.val)||hasPathSum(root.right,targetSum-root.val);
        }
    }

结果:
执行用时:0 ms, 在所有 Java 提交中击败了100.00%的用户
内存消耗:41.1 MB, 在所有 Java 提交中击败了71.19%的用户

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/851783.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号