leetcode的每日一题更新(Binary Tree Tilt)

题目:给出一个二叉树,返回整个树的倾斜。
树节点的倾斜被定义为所有左子树节点值和所有右子树节点值之和的绝对差。 空节点有倾斜0。
整个树的倾斜度定义为所有节点倾斜的总和。
解题思路:一开始我就想错了,没有仔细看题目,其实题目不难,我想到了用一个全局变量来实现,但是一直在犹豫,想在一个函数里用递归全部解决,其实思路就是用另一个函数来递归加上所有的子节点的节点值,并且result全局变量收集每次的左节点和右节点的绝对差。
代码:

int result=0;
    public int findTilt(TreeNode root) {
        postorder(root);
        return result;
    }
    public int postorder(TreeNode root){
        if(root==null)return 0;
        int left=postorder(root.left);
        int right = postorder(root.right);
        
        result+=Math.abs(left-right);
        
        return right+left+root.val;
    }

看了一眼别人的代码写的,高手的也是这样解决的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1 序 2016年6月25日夜,帝都,天下着大雨,拖着行李箱和同学在校门口照了最后一张合照,搬离寝室打车去了提前租...
    RichardJieChen阅读 10,612评论 0 12
  • 感受到生命的无常 我要珍惜我身边的家人👪爱人❤️朋友👬 不要走开我身边 请一直让我守护着你 你们也陪伴着我 我爱你...
    会吃桃子的鱼阅读 1,118评论 0 2
  • 我也不知道自己是否应该将就 我和他在一起 其实并不快乐 我总是自己烦自己 我想他时时刻刻想着我 喜欢陪我 我难过的...
    高处不胜寒1阅读 1,527评论 0 0
  • 現實可能貧瘠無趣 可能尖銳傷人 但還好 蒼天在上 我們還有驕陽 Photo by Kate Kingman
    憨憨爹阅读 1,378评论 0 0