力扣labuladong——一刷day70

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言


这道题的难点在于要一直剪枝,直到没有值为 0 的叶子节点为止,只有从后序遍历位置自底向上处理才能获得最高的效率

一、力扣814. 二叉树剪枝

/**
 * 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 TreeNode pruneTree(TreeNode root) {
   
        if(root == null){
   
            return null;
        }
        
        root.left = pruneTree(root.left);
        root.right = pruneTree(root.right);
        if(root.left == null && root.right == null){
   
            if(root.val == 0){
   
                return null;
            }
        }
        return root;
    }
}

二、力扣1325. 删除给定值的叶子节点

/**
 * 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 TreeNode removeLeafNodes(TreeNode root, int target) {
   
        if(root == null){
   
            return null;
        }
        TreeNode left = removeLeafNodes(root.left,target);
        TreeNode right = removeLeafNodes(root.right,target);
        if(left == null && right == null){
   
            if(root.val == target){
   
                return null;
            }
        }
        root.left = left;
        root.right = right;
        return root;
    }
}

相关推荐

  1. labuladong——day70

    2023-12-13 15:22:04       40 阅读
  2. labuladong——day74

    2023-12-13 15:22:04       36 阅读
  3. labuladong——day75

    2023-12-13 15:22:04       39 阅读
  4. labuladong——day76

    2023-12-13 15:22:04       52 阅读
  5. labuladong——day77

    2023-12-13 15:22:04       33 阅读
  6. labuladong——day78

    2023-12-13 15:22:04       36 阅读
  7. labuladong——day79

    2023-12-13 15:22:04       36 阅读
  8. labuladong——day68

    2023-12-13 15:22:04       37 阅读
  9. labuladong——day67

    2023-12-13 15:22:04       33 阅读
  10. labuladong——day69

    2023-12-13 15:22:04       37 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-13 15:22:04       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-13 15:22:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-13 15:22:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-13 15:22:04       18 阅读

热门阅读

  1. POJ:1113

    2023-12-13 15:22:04       41 阅读
  2. springboot全局异常处理和自定义异常处理

    2023-12-13 15:22:04       40 阅读
  3. 轻松应用字典树

    2023-12-13 15:22:04       41 阅读
  4. 数据库课程设计mysql设计示例

    2023-12-13 15:22:04       33 阅读
  5. 容器化技术Docker

    2023-12-13 15:22:04       35 阅读
  6. 步骤条

    步骤条

    2023-12-13 15:22:04      39 阅读