【LeetCode】(简单)100.相同的树

在这里插入图片描述
做了这么多题,看到题总得会提炼条件、输出,就做对了一半。
条件:1.树的结构相同 2.每个结点对应的值也相同
输出: true 或者 false

首先吧,树类型的题一定先去用递归思考。
因为树的结构问题,它的左右子树又可以被看作一颗独立的树。


递归

跳出条件:当两个树都是空结点时,说明遍历到了树的叶子节点。
成立条件:1.两棵树都不为空 2.根节点的值相等
不满足成功条件的就是返回false
递归:把本结点的左右子树传进来判断是否相等,都相等才返回true


完整代码

class Solution {
    public boolean isSameTree(TreeNode p, TreeNode q) {
          if(p==null && q==null){
              return true;
          }
          if(p!=null && q!=null && p.val == q.val){
          return isSameTree(p.left,q.left)
              &&isSameTree(p.right,q.right);
    }
        else{
            return false;
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值