力扣(leetcode) 100. 相同的树 (理解起来简直不要太容易)

题目在这:https://leetcode-cn.com/problems/same-tree/

题目分析:

题目还是比较容易理解的,给了两个树。看是不是相同的,这里的相同要求树的结构相同,且每个节点里的数值也要相同。

思路分析:

直接递归开整!

递归出口:
1.两指针所指均为空。
2.其中一个为空。
3.两指针所指的值不相等。

上代码!!!

def isSameTree(self, p: TreeNode, q: TreeNode) -> bool:
    if not p and not q:
        return True
    elif not p or not q:
        return False
    elif p.val != q.val:
        return False
    else:
        return self.isSameTree(p.left, q.left) and self.isSameTree(p.right, q.right)

这段代码应该很好理解。
最后一句话就是调用自身,p和q指针同时向左或者向右移动,保证指向两棵树的相同位置进行比较~~~。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

深度不学习!!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值