首页 > 其他分享 >leetcode814. 二叉树剪枝。如果想到使用递归还是很简单的

leetcode814. 二叉树剪枝。如果想到使用递归还是很简单的

时间:2022-11-22 15:24:08浏览次数:64  
标签:剪枝 right return nullptr leetcode814 二叉树 && root left

814. 二叉树剪枝

有一点疑问,为什么不能先         if(!root->left&&!root->right&&root->val==0) return nullptr;     ?

class Solution {
public:
    TreeNode* pruneTree(TreeNode* root) {
        if(root==nullptr) return nullptr;
        root->left=pruneTree(root->left);
        root->right=pruneTree(root->right);
        if(!root->left&&!root->right&&root->val==0) return nullptr;
        return root;
    }
};

 

标签:剪枝,right,return,nullptr,leetcode814,二叉树,&&,root,left
From: https://www.cnblogs.com/uacs2024/p/16915216.html

相关文章

  • 每日算法之二叉树中和为某一值的路径(一)
    JZ82二叉树中和为某一值的路径(一)代码packageesay.JZ82二叉树中和为某一值的路径1;importjava.util.*;classTreeNode{intval=0;TreeNodeleft=......
  • 二叉树
    01.二叉搜索树的最近公共祖先235.二叉搜索树的最近公共祖先当我们从上向下去递归遍历,第一次遇到cur节点是数值在[p,q]区间中,那么cur就是p和q的最近公共祖先;当前节......
  • LC[199] 二叉树的右视图
    [199]二叉树的右视图题目链接:https://leetcode.cn/problems/binary-tree-right-side-view/description/WA一开始的想法是遍历二叉树,只需要右分枝即可。但是如果右边没......
  • 【算法】Java解答有序链表转换二叉搜索树,从中序与后序遍历序列构造二叉树
    有序链表转换二叉搜索树给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差......
  • 决策树剪枝
    一、为什么要进行剪枝?当我们的数据集样本量很大、每个特征的取值很多时,生成决策树的代价就会很大。不仅如此,虽然一个完整的决策树对训练数据的预测非常准,但这会造成对训练......
  • 二叉树交换左右子树递归以及非递归算法
    递归方式基本思想:1、当待处理节点非空时,判断其左右孩子是否不同时为空:若是,转到2、否则分别递归调用左右子树进行操作。2、新建一个辅助结点,执行交换操作。3、递归调用......
  • 决策树剪枝
    一、决策树剪枝1.目的  剪枝(pruning)是决策树学习算法解决过拟合问题的主要手段。  在决策树学习中,为了尽可能正确分类训练样本,节点划分过程将不断重复,有时会造成决......
  • 决策树(二):后剪枝,连续值处理,数据加载器:DataLoader和模型评估
    在上一篇文章中,我们实现了树的构造,在下面的内容中,我们将中心放在以下几个方面1.剪枝2.连续值处理3.数据加载器:DataLoader4.模型评估 一,后剪枝•为什么剪枝  –......
  • 每日算法之判断是不是平衡二叉树
    JZ79判断是不是平衡二叉树描述输入一棵节点数为n二叉树,判断该二叉树是否是平衡二叉树。在这里,我们只需要考虑其平衡性,不需要考虑其是不是排序二叉树平衡二叉树(Balan......
  • 遍历二叉树和线索二叉树
    遍历二叉树:   L:左D:根 R:右    DLR-先根遍历    LDR-中序遍历    LRD-后序遍历  要求:给一棵二叉树,写出它的三种遍历顺序   ......