2331. 计算布尔二叉树的值

给你一棵 完整二叉树 的根,这棵树有以下特征:

叶子节点 要么值为 0 要么值为 1 ,其中 0 表示 False ,1 表示 True 。
非叶子节点 要么值为 2 要么值为 3 ,其中 2 表示逻辑或 OR ,3 表示逻辑与 AND 。

计算 一个节点的值方式如下:

如果节点是个叶子节点,那么节点的 值 为它本身,即 True 或者 False 。
否则,计算 两个孩子的节点值,然后将该节点的运算符对两个孩子值进行 运算 。

返回根节点 root 的布尔运算值。

完整二叉树 是每个节点有 0 个或者 2 个孩子的二叉树。

叶子节点 是没有孩子的节点。

示例 1:

输入:root = [2,1,3,null,null,0,1]
输出:true
解释:上图展示了计算过程。
AND 与运算节点的值为 False AND True = False 。
OR 运算节点的值为 True OR False = True 。
根节点的值为 True ,所以我们返回 true 。

示例 2:

输入:root = [0]
输出:false
解释:根节点是叶子节点,且值为 false,所以我们返回 false 。

这一题是个很不错的题目,或者说可以作为一个变成解决问题的工具,感兴趣可以学习一下:

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     struct TreeNode *left;*     struct TreeNode *right;* };*/bool  dfs_jude(struct TreeNode* root){if(root){if(root->left==NULL&&root->right==NULL){return root->val;}else{bool l=dfs_jude(root->left);bool r=dfs_jude(root->right);if(root->val==2){return l||r;}else{return l&&r;}}}else{return false;}}bool evaluateTree(struct TreeNode* root){return dfs_jude(root);}

2331. 计算布尔二叉树的值-深度优先遍历相关推荐

  1. 【算法leetcode】2331. 计算布尔二叉树的值(多语言实现)

    文章目录 2331. 计算布尔二叉树的值: 样例 1: 样例 2: 提示: 分析 题解 rust go typescript python c c++ java 原题传送门:https://leetc ...

  2. 2331. 计算布尔二叉树的值【划水刷题】

    题目链接 2331. 计算布尔二叉树的值 思路 根据题意: 首先分两种条件搞,叶子节点和非叶子节点 叶子节点 判断本身值因为·1为true,0为false,直接返回本身值就行,那么问题就是怎么判断是否 ...

  3. LeetCode 2331. 计算布尔二叉树的值(树的遍历)

    文章目录 1. 题目 2. 解题 1. 题目 给你一棵 完整二叉树 的根,这棵树有以下特征: 叶子节点 要么值为 0 要么值为 1 ,其中 0 表示 False ,1 表示 True . 非叶子节点 ...

  4. 【深度优先搜索-简单】2331. 计算布尔二叉树的值

    [题目] [代码] # Definition for a binary tree node. # class TreeNode: # def __init__(self, val=0, left=No ...

  5. 广度优先遍历类似于二叉树的_深度优先遍历类似于二叉树的()

    (1)[◆题库问题◆]:[单选] 深度优先遍历类似于二叉树的() A.先序遍历 B.中序遍历 C.后序遍历 D.层次遍历 [◆参考答案◆]:A ·ℳ°.·※°∴ ╰☆╮ .·ℳ°.·※°∴ ╰☆╮ . ...

  6. 二叉树深度优先遍历解题思路

    文章目录 1.二叉树深度优先遍历解题思路 1.1.三种深度优先遍历的方式 1.2.深度优先遍历的启示 1.2.1.递归形成条件 1.2.2递归过程的实际工作顺序 1.2.2.1.单路递归的实际工作顺序 ...

  7. 邻接矩阵存储图并进行深度优先遍历

    内容: 采用邻接矩阵的形式存储图,进行图的深度优先遍历 步骤: 算法分析: 首先,图的邻接矩阵存储结构,就是用一维数组存储图中顶点的信息,用矩阵表示图中各顶点之间的邻接关系.假设图G=(V,E)有n个 ...

  8. 二叉树的深度优先遍历和广度优先遍历

    二叉树是一种很重要的数据结构,对于二叉树的遍历,有深度优先遍历和广度优先遍历,深度优先遍历又有先序.中序.后续遍历,广度优先遍历就是按层遍历. 1. 深度优先遍历 深度优先遍历,也就是先序.中序.后续 ...

  9. 深度优先遍历算法-03二叉树路径遍历问题

    二叉树路径遍历 简述 比较基础的一个DFS的题目,但是确实很多难题的模板.LeetCode很多二叉树的题本质上就是这个路径遍历. 本题为了输出路径,使用DFS的经典结构栈完成. 问题描述 给定一个二叉 ...

最新文章

  1. 【内推】滴滴出行视觉计算组招聘算法实习生
  2. 查询表空间是否是设置了自增
  3. Java动态代理代码快速上手
  4. 2017.1.19切题总结
  5. 高效掌握新技能的「树型思维」
  6. react加水印_给网页增加水印的方法,react
  7. c#.net操作注册表RegistryKey
  8. 遮挡行人的检测论文合集
  9. mysql容器 重启_互联网公司的基本操作!高可用的Mysql双机热备
  10. ThoughtWorks 2018技术雷达峰会(6月2日@深圳)
  11. postfix和dovecot架设邮件服务器的一些记录1
  12. 百度、火星(高德)、84坐标系相互转换
  13. 【VTK】装配体Assembly的使用
  14. 基于51单片机的数字电流电压表
  15. FPGA-小梅哥时序分析
  16. Java 同环比计算相关逻辑
  17. 小福利,运用scrapy爬虫框架高效爬取数据和存储数据
  18. 楚留香服务器维护,楚留香3月30日更新维护公告 楚留香手游更新内容一览
  19. 库克考虑卸任苹果 CEO,谁会是下一任接班人?
  20. 电容式 指纹识别 android 智能硬件

热门文章

  1. vxlan Virtual eXtensible Local Area Networking
  2. 什么是tcp三次握手
  3. 链表的二路归并排序 Sort List
  4. JavaScript进阶 - 第7章 JavaScript内置对象
  5. Linux下挂在磁盘分区教程
  6. 2017年8月3日 星期四 --出埃及记 Exodus 28:25
  7. 【方法】睡眠操作清单
  8. 每天巧得支付宝大额红包,以后再也不用天天“褥羊毛”了,可以天天“吃羊肉”了哦!
  9. GPS、谷歌、百度坐标系互相转换
  10. 在发送邮件的时候出现《命令顺序不正确。 服务器响应为:Error: need EHLO and AUTH first !》解决方案