当前位置: 首页 > article >正文

LeetCode - 965. 单值二叉树

目录

题目

深度优先搜索方法

正确的写法


题目

965. 单值二叉树 - 力扣(LeetCode)

深度优先搜索方法

什么是深度优先搜索:深度优先搜索(DFS)是一种图或树的遍历算法,它从起始节点开始,尽可能深地沿着一条路径探索,直到无法继续前进,然后回溯到上一个节点,选择另一条未探索的路径继续搜索。

判断一棵树是否为单值二叉树,即所有节点的值都相同

使用递归方式遍历整棵树

判断条件分为三部分:

  • 当前节点的左子节点(如果存在)的值必须等于当前节点的值
  • 当前节点的右子节点(如果存在)的值必须等于当前节点的值
  • 左子树和右子树各自也必须是单值二叉树

如果以上条件都满足,则整棵树是单值二叉树

递归的终止条件是遇到空节点(返回true)或发现不同值的节点(返回false)

正确的写法

class Solution {
public:bool isUnivalTree(TreeNode* root) {if(!root){return true;}if(root->left && root->left->val != root->val){return false;}if(root->right && root->right->val != root->val){return false;}bool Aresult = isUnivalTree(root->left);bool Bresult = isUnivalTree(root->right);return Aresult && Bresult;}
};
http://www.lryc.cn/news/2397710.html

相关文章:

  • LabVIEW杂草识别与精准喷洒
  • 分布式不同数据的一致性模型
  • “application/json“,“text/plain“ 分别表示什么
  • SQL: 窗口滑动(Sliding Window)
  • 学习日记-day20-6.1
  • 【音视频】 FFmpeg 解码H265
  • Linux 系统 Docker Compose 安装
  • 软件测试|FIT故障注入测试工具——ISO 26262合规下的智能汽车安全验证引擎
  • 3D拟合测量水杯半径
  • (21)量子计算对密码学的影响
  • Python训练打卡Day38
  • Selenium基础操作方法详解
  • Kali Linux从入门到实战:系统详解与工具指南
  • 【大模型】Bert变种
  • vue-09(使用自定义事件和作用域插槽构建可重用组件)
  • 简单三步FastAdmin 开源框架的安装
  • RISC-V 开发板 MUSE Pi Pro 搭建 Spacengine AI模型部署环境
  • C++面试5——对象存储区域详解
  • 【Unity】AudioSource超过MaxDistance还是能听见
  • 基于 51 单片机的智能饮水机控制系统设计与实现
  • Qt 读取和写入 INI 格式的配置文件
  • 互联网大厂Java求职面试:AI与云原生架构实战解析
  • Spring:从青铜到王者,你的Java修炼手册
  • React和原生事件的区别
  • Qt creator 设计页面控件认识与了解
  • 命象架构法 02|你的系统有“用神”吗?
  • NVIDIA Mellanox BlueField-2 DPU(Data Processing Unit)智能网卡的调试和使用
  • Tomcat- AJP协议文件读取/命令执行漏洞(幽灵猫复现)详细步骤
  • B1、进度汇报(— 25/05/31)
  • 工作流引擎-11-开源 BPM 项目 jbpm