【二叉树】 Same-tree

- 日理万妓 2023-03-06 03:22 80阅读 0赞

☞梦想进大厂的一只程序猿☜

☞期望毕业前力扣刷够400题☜

☞正在复习数据结构和算法☜

☞博客地址:https://www.huangliangshuai.com/☜

#

1. 题目描述

给出两个二叉树,请写出一个判断两个二叉树是否相等的函数。

判断两个二叉树相等的条件是:两个二叉树的结构相同,并且相同的节点上具有相同的值。

2. 题目分析

  1. 这个题目最简单的方法就是用递归来做

    if(p == null && q == null){

    1. return true;
    2. }else if(p == null || q == null){
    3. return false;
    4. }else if(p.val != q.val){
    5. return false;
    6. }
  2. 第二个做法,也就是如果我们没有想起来这个递归的话,直接用遍历一遍树,然后依次比较,这里如果是null的话,也要放进去

3. 题目代码

  1. public class Solution {
  2. /**
  3. *
  4. * @param p TreeNode类
  5. * @param q TreeNode类
  6. * @return bool布尔型
  7. */
  8. public boolean isSameTree (TreeNode p, TreeNode q) {
  9. // write code here
  10. if(p == null && q == null){
  11. return true;
  12. }else if(p == null || q == null){
  13. return false;
  14. }else if(p.val != q.val){
  15. return false;
  16. }
  17. return isSameTree(p.left,q.left) && isSameTree(p.right,q.right);
  18. }
  19. }

发表评论

表情:
评论列表 (有 0 条评论,80人围观)

还没有评论,来说两句吧...

相关阅读