• 力扣(226.112)补9.8


    226.翻转二叉树

    可以做,先确定递归函数的作用(定义),再看递归函数需要怎么遍历以及每次遍历需要做什么。

     

    class Solution {

    public void invert(TreeNode root){

        if(root==null)

        return;

        if(root.left==null&&root.right==null)

        return;

        TreeNode t=new TreeNode();

        t=root.left;

        root.left=root.right;

        root.right=t;    

        invert(root.left);

        invert(root.right);

        public TreeNode invertTree(TreeNode root) {

            invert(root);

            return root;

        }

    }

     

    112.路径总和

    这题我做麻烦了,用了俩个递归函数,第一个递归把该节点之前遍历的数的总和赋给这个结点,第二个递归,遍历所有结点,如果叶子结点中有targetsum说明没问题。

    class Solution {

        int flag=0;

        public void f(TreeNode root){

            if(root==null)

            return;

            if(root.left!=null)

            root.left.val=root.left.val+root.val;

            if(root.right!=null)

            root.right.val=root.right.val+root.val;

            f(root.left);

            f(root.right);

        }

        public void f2(TreeNode root,int targetSum){

            if(root==null)

            return;

            if(root.left==null&&root.right==null&&root.val==targetSum)

            flag=1;

            f2(root.left,targetSum);

            f2(root.right,targetSum);

        }

        public boolean hasPathSum(TreeNode root, int targetSum) {

            if(root==null)

            return false;

            f(root);

            f2(root,targetSum);

            if(flag==1)

            return true;

            else return false;

     

        }

    }

     

     

  • 相关阅读:
    V-REP和Python的联合仿真
    前后端分离项目(vue+springboot)集成pageoffice实现在线编辑office文件
    wpf RelativeSource绑定
    django_model_一对一映射
    vue3实现塔罗牌翻牌
    websocket通信
    【android12-linux-5.1】【ST芯片】【RK3588】【LSM6DSR】HAL移植
    如何解决Web前端安全问题?
    数学建模(一):2022年国赛a题
    运算放大器基本放大电路
  • 原文地址:https://blog.csdn.net/m0_65280246/article/details/127881625