2331. 计算布尔二叉树的值-深度优先遍历
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. 计算布尔二叉树的值-深度优先遍历相关推荐
- 【算法leetcode】2331. 计算布尔二叉树的值(多语言实现)
文章目录 2331. 计算布尔二叉树的值: 样例 1: 样例 2: 提示: 分析 题解 rust go typescript python c c++ java 原题传送门:https://leetc ...
- 2331. 计算布尔二叉树的值【划水刷题】
题目链接 2331. 计算布尔二叉树的值 思路 根据题意: 首先分两种条件搞,叶子节点和非叶子节点 叶子节点 判断本身值因为·1为true,0为false,直接返回本身值就行,那么问题就是怎么判断是否 ...
- LeetCode 2331. 计算布尔二叉树的值(树的遍历)
文章目录 1. 题目 2. 解题 1. 题目 给你一棵 完整二叉树 的根,这棵树有以下特征: 叶子节点 要么值为 0 要么值为 1 ,其中 0 表示 False ,1 表示 True . 非叶子节点 ...
- 【深度优先搜索-简单】2331. 计算布尔二叉树的值
[题目] [代码] # Definition for a binary tree node. # class TreeNode: # def __init__(self, val=0, left=No ...
- 广度优先遍历类似于二叉树的_深度优先遍历类似于二叉树的()
(1)[◆题库问题◆]:[单选] 深度优先遍历类似于二叉树的() A.先序遍历 B.中序遍历 C.后序遍历 D.层次遍历 [◆参考答案◆]:A ·ℳ°.·※°∴ ╰☆╮ .·ℳ°.·※°∴ ╰☆╮ . ...
- 二叉树深度优先遍历解题思路
文章目录 1.二叉树深度优先遍历解题思路 1.1.三种深度优先遍历的方式 1.2.深度优先遍历的启示 1.2.1.递归形成条件 1.2.2递归过程的实际工作顺序 1.2.2.1.单路递归的实际工作顺序 ...
- 邻接矩阵存储图并进行深度优先遍历
内容: 采用邻接矩阵的形式存储图,进行图的深度优先遍历 步骤: 算法分析: 首先,图的邻接矩阵存储结构,就是用一维数组存储图中顶点的信息,用矩阵表示图中各顶点之间的邻接关系.假设图G=(V,E)有n个 ...
- 二叉树的深度优先遍历和广度优先遍历
二叉树是一种很重要的数据结构,对于二叉树的遍历,有深度优先遍历和广度优先遍历,深度优先遍历又有先序.中序.后续遍历,广度优先遍历就是按层遍历. 1. 深度优先遍历 深度优先遍历,也就是先序.中序.后续 ...
- 深度优先遍历算法-03二叉树路径遍历问题
二叉树路径遍历 简述 比较基础的一个DFS的题目,但是确实很多难题的模板.LeetCode很多二叉树的题本质上就是这个路径遍历. 本题为了输出路径,使用DFS的经典结构栈完成. 问题描述 给定一个二叉 ...
最新文章
- 【内推】滴滴出行视觉计算组招聘算法实习生
- 查询表空间是否是设置了自增
- Java动态代理代码快速上手
- 2017.1.19切题总结
- 高效掌握新技能的「树型思维」
- react加水印_给网页增加水印的方法,react
- c#.net操作注册表RegistryKey
- 遮挡行人的检测论文合集
- mysql容器 重启_互联网公司的基本操作!高可用的Mysql双机热备
- ThoughtWorks 2018技术雷达峰会(6月2日@深圳)
- postfix和dovecot架设邮件服务器的一些记录1
- 百度、火星(高德)、84坐标系相互转换
- 【VTK】装配体Assembly的使用
- 基于51单片机的数字电流电压表
- FPGA-小梅哥时序分析
- Java 同环比计算相关逻辑
- 小福利,运用scrapy爬虫框架高效爬取数据和存储数据
- 楚留香服务器维护,楚留香3月30日更新维护公告 楚留香手游更新内容一览
- 库克考虑卸任苹果 CEO,谁会是下一任接班人?
- 电容式 指纹识别 android 智能硬件
热门文章
- vxlan Virtual eXtensible Local Area Networking
- 什么是tcp三次握手
- 链表的二路归并排序 Sort List
- JavaScript进阶 - 第7章 JavaScript内置对象
- Linux下挂在磁盘分区教程
- 2017年8月3日 星期四 --出埃及记 Exodus 28:25
- 【方法】睡眠操作清单
- 每天巧得支付宝大额红包,以后再也不用天天“褥羊毛”了,可以天天“吃羊肉”了哦!
- GPS、谷歌、百度坐标系互相转换
- 在发送邮件的时候出现《命令顺序不正确。 服务器响应为:Error: need EHLO and AUTH first !》解决方案