LeetCode 250. 统计同值子树(递归)

文章目录

    • 1. 题目
    • 2. 解题

1. 题目

给定一个二叉树,统计该二叉树数值相同的子树个数。

同值子树是指该子树的所有节点都拥有相同的数值。

示例:
输入: root = [5,1,5,5,5,null,5]5/ \1   5/ \   \5   5   5
输出: 4

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/count-univalue-subtrees
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

class Solution {int count = 0;
public:int countUnivalSubtrees(TreeNode* root) {dfs(root);return count;}bool dfs(TreeNode* root){if(!root) return true;bool l = dfs(root->left);//左子树都一样吗?bool r = dfs(root->right);if(!l || !r || (root->left && root->val != root->left->val) ||(root->right && root->val != root->right->val))		return false;//左右子树有不一样 or root值跟左右不相等count++;return true;}
};

12 ms 16.3 MB


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
Michael阿明

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/475170.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php 函数报错,PHP报错函数error_reporting()怎么用?

PHP中,报错函数error_reporting()用于规定应该报告何种PHP错误,语法“error_reporting(level)”;使用该函数可以设置在脚本运行时的错误级别,如果没有设置可选参数level,则仅返回当前的错误报告级别。推荐:…

LeetCode 426. 将二叉搜索树转化为排序的双向链表(BST中序循环遍历)

文章目录1. 题目2. 解题1. 题目 将一个 二叉搜索树 就地转化为一个 已排序的双向循环链表 。 对于双向循环列表,你可以将左右孩子指针作为双向循环链表的前驱和后继指针,第一个节点的前驱是最后一个节点,最后一个节点的后继是第一个节点。 …

LeetCode 285. 二叉搜索树中的顺序后继(中序遍历)

文章目录1. 题目2. 解题1. 题目 给你一个二叉搜索树和其中的某一个结点,请你找出该结点在树中顺序后继的节点。 结点 p 的后继是值比 p.val 大的结点中键值最小的结点。 示例 1: 输入: root [2,1,3], p 1 输出: 2 解析: 这里 1 的顺序后继是 2。 请注意 p 和…

LeetCode 510. 二叉搜索树中的中序后继 II(查找右子树或者祖父节点)

文章目录1. 题目2. 解题1. 题目 给定一棵二叉搜索树和其中的一个节点 node ,找到该节点在树中的中序后继。 如果节点没有中序后继,请返回 null 。 一个结点 node 的中序后继是键值比 node.val大所有的结点中键值最小的那个。 你可以直接访问结点&…

一个关于Remoting的简单例子

前言 今天在整理以前写的一些demo,看到一个关于remoting的例子。好久不用remoting了,果断记录一下。 什么是Remoting 简单回顾下: 1.Remoting是一种远程通信,或者说跨应用程序(域)通信的技术,在C/S架构的程…

php mqtt qos,Mqtt Qos 深度解读

1.QoS含义 :Quality of Service,服务质量2.作用域发布者的Qos订阅者的Qos3.等级与作用level 0:最多一次的传输level 1:至少一次的传输,(鸡肋)level 2: 只有一次的传输4.交互过程qos0对于qos1而言,对于clien…

LeetCode 1502. 判断能否形成等差数列

文章目录1. 题目2. 解题1. 题目 给你一个数字数组 arr 。 如果一个数列中,任意相邻两项的差总等于同一个常数,那么这个数列就称为 等差数列 。 如果可以重新排列数组形成等差数列,请返回 true ;否则,返回 false 。 …

matlab2017调用vgg19,VGG19模型训练+读取

VGG-19的介绍和训练这里不做说明,网上资源很多,而且相对比较简单.本博文主要介绍VGG-19模型调用官方已经训练好的模型,进行测试使用.[TOC]VGG-19模型简单介绍VGG模型使用VGG结构模型VGG具体参数模型VGG-19模型文件介绍这里是重难点,VGG-19模型存储的方式有点复杂可以通过作者文…

LeetCode 1504. 统计全 1 子矩形(记录左侧的连续1的个数)

文章目录1. 题目2. 解题1. 题目 给你一个只包含 0 和 1 的 rows * columns 矩阵 mat , 请你返回有多少个 子矩形 的元素全部都是 1 。 示例 1: 输入:mat [[1,0,1],[1,1,0],[1,1,0]] 输出:13 解释: 有 6 个 1x1 的矩…

matlab中ode23s使用方法,MATLAB中ode23函数,龙格库塔函数

今天说一说MATLAB中ode23函数的原理,在网上看了好多,但是不知道是怎么计算的,就知道是那么用的,但是最后结果咋回事不知道,今天来讲一讲是怎么计算的。首先来个程序:function feg6fun(t,y)f-y^3-2;end上面是…

LeetCode 1503. 所有蚂蚁掉下来前的最后一刻(脑筋急转弯)

文章目录1. 题目2. 解题1. 题目 有一块木板,长度为 n 个 单位 。一些蚂蚁在木板上移动,每只蚂蚁都以 每秒一个单位 的速度移动。其中,一部分蚂蚁向 左 移动,其他蚂蚁向 右 移动。 当两只向 不同 方向移动的蚂蚁在某个点相遇时&a…

LeetCode 1246. 删除回文子数组(区间DP)

文章目录1. 题目2. 解题1. 题目 给你一个整数数组 arr&#xff0c;每一次操作你都可以选择并删除它的一个 回文 子数组 arr[i], arr[i1], ..., arr[j]&#xff08; i < j&#xff09;。 注意&#xff0c;每当你删除掉一个子数组&#xff0c;右侧元素都会自行向前移动填补空…

LeetCode 573. 松鼠模拟(数学)*

文章目录1. 题目2. 解题1. 题目 现在有一棵树&#xff0c;一只松鼠和一些坚果。位置由二维网格的单元格表示。 你的目标是找到松鼠收集所有坚果的最小路程&#xff0c;且坚果是一颗接一颗地被放在树下。 松鼠一次最多只能携带一颗坚果&#xff0c;松鼠可以向上&#xff0c;向下…

MySQL索引背后的数据结构及算法原理(转)

摘要 本文以MySQL数据库为研究对象&#xff0c;讨论与数据库索引相关的一些话题。特别需要说明的是&#xff0c;MySQL支持诸多存储引擎&#xff0c;而各种存储引擎对索引的支持也各不相同&#xff0c;因此MySQL数据库支持多种索引类型&#xff0c;如BTree索引&#xff0c;哈希索…

LeetCode 1273. 删除树节点(拓扑排序/DFS)

文章目录1. 题目2. 解题2.1 取巧解2.2 拓扑排序2.3 建图DFS1. 题目 给你一棵以节点 0 为根节点的树&#xff0c;定义如下&#xff1a; 节点的总数为 nodes 个&#xff1b; 第 i 个节点的值为 value[i] &#xff1b; 第 i 个节点的父节点是 parent[i] 。 请你删除节点值之和为…

WinForm邮件内容编辑器的简单实现

1、概述 在WinForm开发中&#xff0c;您可能会碰到发送邮件时内容编辑的问题&#xff0c;大部分开发人员第一个想法是希望将 WinForm中的内容编辑器做到和.NET 中类似FCK一样。今天我们就来介绍下如何实现和FCK一样的内容编辑器功能。 2、正文 邮件内容编辑器的问题,在…

LeetCode 1245. 树的直径(图的最大直径结论)

文章目录1. 题目2. 解题1. 题目 求树的最大直径。 2. 解题 类似题目&#xff1a;LeetCode 5538. 统计子树中城市之间最大距离&#xff08;枚举所有可能图的最大直径&#xff09; 结论&#xff1a;求无权无向图中的最长一条路径 先从任意一点P出发&#xff0c;找到离它最远的…

64 位 win7(2008 r2) 使用PLSQL Developer x86 32bit的解决方法

64 位 win7 使用PLSQL Developer 由于 PLSQL Developer 没有64位版本&#xff0c;所以在64位系统上运行该程序会报错&#xff0c;笔者为这个问题纠结了好几天&#xff0c;后来通过请教Google 动手实践&#xff0c;终于搞定了这个问题。现在把笔者解决的过程记录下来&#xff…

python的序列类型包括哪三类,Python常用的序列类型包括列表、元组和字典三种。...

表示M型&#xff0c;常用统中库管理系数据。边际位人的人消费每增增加加1均收均消倾向个单出数入所费支是指&#xff0c;列类边际消费民的年农倾向村居是(。的家品消庭食9年则2居民城镇出为费支&#xff0c;型包庭以3口镇家若城人计算。括列北省的份控股有及额为年国占河企业国…

LeetCode 545. 二叉树的边界(前序+后序)*

文章目录1. 题目2. 解题1. 题目 给定一棵二叉树&#xff0c;以逆时针顺序从根开始返回其边界。 边界按顺序包括左边界、叶子结点和右边界而不包括重复的结点。 (结点的值可能重复) 左边界的定义是从根到最左侧结点的路径。 右边界的定义是从根到最右侧结点的路径。 若根没有左…