LeetCode 872叶子相似的树-简单

请考虑一棵二叉树上所有的叶子,这些叶子的值按从左到右的顺序排列形成一个 叶值序列 。

在这里插入图片描述

举个例子,如上图所示,给定一棵叶值序列为 (6, 7, 4, 9, 8) 的树。

如果有两棵二叉树的叶值序列是相同,那么我们就认为它们是 叶相似 的。

如果给定的两个头结点分别为 root1 和 root2 的树是叶相似的,则返回 true;否则返回 false 。

示例 1:

在这里插入图片描述

输入:root1 = [3,5,1,6,2,9,8,null,null,7,4], root2 = [3,5,1,6,7,4,2,null,null,null,null,null,null,9,8]
输出:true

示例 2:

输入:root1 = [1], root2 = [1]
输出:true

示例 3:

输入:root1 = [1], root2 = [2]
输出:false

示例 4:

输入:root1 = [1,2], root2 = [2,2]
输出:true

示例 5:

在这里插入图片描述

输入:root1 = [1,2,3], root2 = [1,3,2]
输出:false

提示:

给定的两棵树可能会有 1 到 200 个结点。
给定的两棵树上的值介于 0 到 200 之间。

代码如下:

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:bool leafSimilar(TreeNode* root1, TreeNode* root2) {vector<int>l1;vector<int>l2;dfs(root1,l1);dfs(root2,l2);return l1==l2;}void dfs(TreeNode *root,vector<int>&v){if (root==nullptr) return ;if (root->left==nullptr && root->right==nullptr) v.push_back(root->val);dfs(root->left,v);dfs(root->right,v);}
};

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

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

相关文章

android圆形变方形动画,CSS3 简单的圆形/方形变形动画

CSS语言&#xff1a;CSSSCSS确定html,body {width: 100%;height: 100%;background-color: #221e40;}*,*:after,*::before {box-sizing: border-box;}.centered {width: 100%;height: 100px;position: absolute;top: 50%;margin-top: -50px;}.morph {width: 100%;height: 100px;…

.NET Core开发实战(第35课:MediatR:让领域事件处理更加优雅)--学习笔记

35 | MediatR&#xff1a;让领域事件处理更加优雅核心对象IMediatorINotificationINotificationHandler这两个与之前的 Request 的行为是不一样的&#xff0c;接下来看一下代码internal class MyEvent : INotification {public string EventName { get; set; } }internal class…

LeetCode 559N叉树的最大深度-简单

给定一个 N 叉树&#xff0c;找到其最大深度。 最大深度是指从根节点到最远叶子节点的最长路径上的节点总数。 N 叉树输入按层序遍历序列化表示&#xff0c;每组子节点由空值分隔&#xff08;请参见示例&#xff09;。 示例 1&#xff1a; 输入&#xff1a;root [1,null,3,…

android 5.0状态栏下载地址,Android沉浸式状态栏(5.0以上系统)

Android沉浸式状态栏(5.0以上系统)沉浸式状态栏可以分为两种:1.直接给状态栏设置颜色 (如下图:)这里写图片描述java代码形式:if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) {Window window activity.getWindow();window.addFlags(WindowManager.LayoutParams…

解析“60k”大佬的19道C#面试题(下)

解析“60k”大佬的19道C#面试题&#xff08;下&#xff09;在上篇中&#xff0c;我解析了前 10 道题目&#xff0c;本篇我将尝试解析后面剩下的所有题目。解析“60k”大佬的19道C#面试题&#xff08;上&#xff09;这些题目确实不怎么经常使用&#xff0c;因此在后文中&#xf…

LeetCode 543二叉树的直径-简单

给定一棵二叉树&#xff0c;你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。 示例 : 给定二叉树 1/ \2 3/ \ 4 5 返回 3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。 代码如下: /*** Def…

android 卡顿代码定位,Android 性能优化实例:通过 TraceView 定位卡顿问题

8种机械键盘轴体对比本人程序员&#xff0c;要买一个写代码的键盘&#xff0c;请问红轴和茶轴怎么选&#xff1f;背景项目中使用了鸿洋大神的TreeView树状结构控件&#xff0c; 但是由于在主线程中使用了注解/反射来定位节点&#xff0c; 内容一多就有点卡顿。因此通过android …

DotNetCore三大Redis客户端对比和使用心得

前言稍微复杂一点的互联网项目&#xff0c;技术选型都会涉及Redis&#xff0c;.NetCore的生态越发完善&#xff0c;支持.NetCore的Redis客户端越来越多&#xff0c;下面三款常见的Redis客户端&#xff0c;相信大家平时或多或少用到一些&#xff0c;结合三款客户端的使用经历&am…

LeetCode 226翻转二叉树-简单

翻转一棵二叉树。 示例&#xff1a; 输入&#xff1a; 4/ \2 7/ \ / \ 1 3 6 9输出&#xff1a; 4/ \7 2/ \ / \ 9 6 3 1代码如下: /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode…

android elevation 白色,Android Elevation

简介&#xff1a;在Android API21&#xff0c;新添加了一个属性&#xff1a;android:elevation&#xff0c;用以在xml定义View的深度(高度)&#xff0c;也即z方向的值。除了elevation之外&#xff0c;类似于已有的translationX、translationY&#xff0c;也相对应地新增了一个t…

(译)创建.NET Core多租户应用程序-租户解析

介绍本系列博客文章探讨了如何在ASP.NET Core Web应用程序中实现多租户。这里有很多代码段&#xff0c;因此您可以按照自己的示例应用程序进行操作。在此过程的最后&#xff0c;没有对应的NuGet程序包&#xff0c;但这是一个很好的学习和练习。它涉及到框架的一些“核心”部分。…

LeetCode 404左叶子之和-简单

计算给定二叉树的所有左叶子之和。 示例&#xff1a; 3/ \9 20/ \15 7在这个二叉树中&#xff0c;有两个左叶子&#xff0c;分别是 9 和 15&#xff0c;所以返回 24 代码如下: /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode…

android apt最新版本,解决Android studio 2.3升级到Android studio 3.0 后apt报错问题

解决Android studio 2.3升级到Android studio 3.0 后apt报错问题发布时间&#xff1a;2020-09-16 19:59:42来源&#xff1a;脚本之家阅读&#xff1a;62作者&#xff1a;哈特中尉1.现象描述原来项目在Android studio 2.3一切正常&#xff0c;升级3.0之后报如下错误&#xff1a;…

【要闻】Kubernetes无用论诞生、Elasticsearch 7.6.2 发布

导读&#xff1a;本期要闻包含OpenStack网络如何给组织带来好处、Portworx CEO分享的如何让Kubernetes跑得快还不出错的秘籍等精彩内容。大数据要闻Elasticsearch 7.6.2 发布&#xff0c;分布式搜索和数据分析引擎Elasticsearch 7.6.2 发布了&#xff0c;Elasticsearch 是一个分…

android中弹出窗口,如何在Android中创建弹出窗口(PopupWindow)

如何制作一个简单的Android弹出窗口这是一个更完整的例子。这是一个补充性答案&#xff0c;涉及一般情况下创建弹出窗口的过程&#xff0c;而不一定是OP问题的具体细节。(OP要求取消按钮&#xff0c;但这不是必需的&#xff0c;因为用户可以在屏幕上的任意位置单击以将其取消。…

LeetCode 04检查平衡性-简单

实现一个函数&#xff0c;检查二叉树是否平衡。在这个问题中&#xff0c;平衡树的定义如下&#xff1a;任意一个节点&#xff0c;其两棵子树的高度差不超过 1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3/ \9 20/ \15 7返回 true 。 示例 2: 给定二叉树 [1,2,2,3,…

玩转控件:对Dev中GridControl控件的封装和扩展

清明节清明时节雨纷纷路上行人欲断魂借问酒家何处有牧童遥指杏花村又是一年清明节至&#xff0c;细雨绵绵犹如泪光&#xff0c;树叶随风摆动....转眼间&#xff0c;一年又过去了三分之一&#xff0c;疫情的严峻让不少企业就跟清明时节的树叶一样&#xff0c;摇摇欲坠。裁员的裁…

C++ using namespace 命名空间的定义与使用

#include <iostream> using namespace std;namespace A {int x, y;void fun() {cout << "hello world" << endl;} }int main() {using namespace A;cout << x << endl;fun();return 0; }

android webview framework,android – Webview导致ANR

我编写了一个应用程序,它在Webview中显示html页面,这些页面在ViewPager中管理.一切正常,但是从一页翻到另一页时我有几个ANR. ANR数据转储显示主线程已通过ThreadedRenderer.nSyncAndDrawFrame()调用它调用本机方法,该方法显然与Renderer线程通信,并等待该线程完成绘制视图.由于…

创业5年,我有5点关于人的思考

点击蓝字关注&#xff0c;回复“职场进阶”获取职场进阶精品资料一份不知不觉创业五年了&#xff0c;也算一个屡战屡败、屡败屡战的创业老兵了。从第一次失败要靠吃抗抑郁的药&#xff0c;到现在理性的看待成败得失&#xff0c;不得不说&#xff0c;创业这条路对我还是有不小提…