563. 二叉树的坡度

563. 二叉树的坡度

原题

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 {
    int res = 0;
    public int findTilt(TreeNode root) {
        if(root==null){
            return 0;
        }
        dfs(root);
        return res;
    }
    public int dfs(TreeNode root){
        if(root==null){
            return 0;
        }
        //左子树遍历递归
        int left = dfs(root.left);
        //右子树遍历递归
        int right = dfs(root.right);
        //求累计坡度
        res += Math.abs(left-right);
        //计算当前结点和其子树的总值
        return root.val+left+right;
    }
}
相关推荐
稚南城才子,乌衣巷风流2 小时前
块状链表:数据结构详解与实现
数据结构·链表
日拱一卒——功不唐捐4 小时前
红黑树删除(C语言)
c语言·数据结构
不如语冰5 小时前
AI大模型入门-Python进阶-上下文管理与with语句
开发语言·数据结构·数据库·人工智能·pytorch·redis·python
Angle.寻梦5 小时前
数据结构--链表
数据结构·链表
ykdcdc6 小时前
DC-DC隔离和非隔离怎么选?工控/监控/医疗分别用哪种
数据结构·汽车·推荐算法
Angle.寻梦6 小时前
数据结构--堆
数据结构
stolentime7 小时前
SP8549 MAIN75 - BST again题解
c++·算法·二叉树·深度优先·图论·记忆化搜索·组合数学
笨鸟先飞的橘猫9 小时前
redis数据结构学习——stream
数据结构·redis·学习
雨落在了我的手上10 小时前
Java数据结构(六):链表的介绍
java·开发语言·数据结构
Angle.寻梦11 小时前
数据结构--栈与队列
数据结构