872. 叶子相似的树

872. Leaf-Similar Trees

题目描述

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

LeetCode872. Leaf-Similar Trees简单

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

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

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

提示:

  • 给定的两颗树可能会有 1 到 100 个结点。

Java 实现

TreeNode Class

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) {
return root1 == null && root2 == null ? true : false;
}
StringBuffer sb1 = new StringBuffer();
StringBuffer sb2 = new StringBuffer();
preorder(root1, sb1);
preorder(root2, sb2);
return sb1.toString().equals(sb2.toString());
} public void preorder(TreeNode root, StringBuffer sb) {
if (root == null) {
return;
}
if (root.left == null && root.right == null) {
sb.append(root.val);
}
preorder(root.left, sb);
preorder(root.right, sb);
}
}

参考资料

最新文章

  1. POJ 3041 -- 二分图匹配
  2. SPOJ REPEATS 后缀数组
  3. Linux3.4内核 Yaffs2文件系统的移植
  4. Hibernate的各种关联关系
  5. Xcode的一些有用的插件
  6. [HTML]HTML5实现可编辑表格
  7. SAP 物料主数据屏幕增强
  8. Codeforces Round #337 (Div. 2) A. Pasha and Stick 数学
  9. Colletion View 简单的备忘
  10. SpringMVC:学习笔记(8)——文件上传
  11. 使用Nginx搭建本地流媒体服务器
  12. vs 2015 rdlc报表绑定datagridview中的数据
  13. C++反汇编第五讲,认识多重继承,菱形继承的内存结构,以及反汇编中的表现形式.
  14. web开发性能优化---代码优化篇
  15. WIN10安装不上IIS,使用IISExpress作为发布服务
  16. iOS开发,这样写简历才能让大厂面试官看重你!
  17. 2018-2019-2 20175305实验一《Java开发环境的熟悉》实验报告
  18. java clone()
  19. C++—程序的内存分区
  20. [PHP] PHP在CLI环境下的错误日志

热门文章

  1. MYECLIPSE说明书
  2. web自动化测试-模块驱动测试实例和数据驱动测试实例
  3. java将图片输出base64位码显示
  4. 基于Ubuntu1604+ROS-kinetic+roscpp的激光雷达定位算法从零开始移植
  5. c++ socket发送数据时,sendData = char * string 导致的乱码问题
  6. jsp大附件上传,支持断点续传
  7. WinDbg常用命令系列---.cordll (控制CLR调试)
  8. NTSTATUS代码摘录
  9. sqler 集成 terraform v0.12 生成资源部署文件
  10. windows客户端