Leetcode 872. 叶子相似的树
2024-10-21 04:10:11
题目链接
https://leetcode-cn.com/problems/leaf-similar-trees/description/
题目描述
请考虑一颗二叉树上所有的叶子,这些叶子的值按从左到右的顺序排列形成一个 叶值序列 。
举个例子,如上图所示,给定一颗叶值序列为 (6, 7, 4, 9, 8) 的树。
如果有两颗二叉树的叶值序列是相同,那么我们就认为它们是 叶相似 的。
如果给定的两个头结点分别为 root1 和 root2 的树是叶相似的,则返回 true;否则返回 false 。
提示:
- 给定的两颗树可能会有 1 到 100 个结点。
题解
把每棵树的叶子节点存起来,在进行比较。
代码
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
class Solution {
public boolean leafSimilar(TreeNode root1, TreeNode root2) {
if ((root1 != null && root2 != null) || (root1 == null && root2 == null)) {
List<Integer> list1 = new ArrayList<>();
List<Integer> list2 = new ArrayList<>();
findLeaf(root1, list1);
findLeaf(root2, list2);
if (list1.size() != list2.size()) { return false; }
for (int i = 0; i < list1.size(); i++) {
if (list1.get(i) != list2.get(i)) { return false; }
}
return true;
}
return false;
}
public void findLeaf(TreeNode root, List<Integer> list) {
if (root == null) { return; }
if (root.left == null && root.right == null) { list.add(root.val); }
findLeaf(root.left, list);
findLeaf(root.right, list);
}
}
最新文章
- ASP.NET MVC动作过滤器
- vim74安装
- 初步搭建RocketMQ环境
- mvc 中的 [ChildActionOnly] 和 [NonAction]
- Windows Phone Studio-任何人都能开发Windows Phone App的在线工具
- jquery总结05-常用事件02-表单事件
- linux 查看所有用户
- 数论 : 模运算法则(poj 1152)
- android开发中系统自带语音模块的使用
- thinkPHP生成静态分页列表
- POJ3630Phone List(字典树)
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)2----通过应用程序域AppDomain加载和卸载程序集之后,如何再返回原来的主程序域
- php5.5新特性之yield理解
- 华为S5700基础配置----备份和恢复配置文件
- 10、Libgdx的内存管理
- Python生成PASCAL VOC格式的xml标注文件
- mmm和mmma的区别
- Oracle11g密码过期处理方法
- debian修改默认编辑器
- rubygems ruby国内源
热门文章
- Java继承改进
- Java爬虫初体验
- 常见SQL优化方法
- Vue打包后页面出现cannot get
- ArcGIS for Server新建站点异常,Failed to create the site.Failed to configure the server machine&#39;XXXX&#39;,Server machine&#39;XXXX&#39; is not a local server machine.
- 【转】如何在Git中撤销一切
- YII2 定义页面提示
- 【强力卸载】使用Uninstall Tool卸载各类不易卸载的软件
- IOS 获取文本焦点 主动召唤出键盘(becomeFirstResponder) and 失去焦点(退下键盘)
- Cesium专栏-测量工具测距、测面、测高(附源码下载)