判断两棵树是否相同
题目: 给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。
思路方法: 暴力法,递归+枚举(在这种写法下,不可以写p.val == q.val ,返回True,这样的操作导致树无法展开)
code:
class Solution:
def issameTree(self, p:TreeNode, q:TreeNode) -> bool:
if p == None and q == None:
return True
if p == None or q == None:
return False
if p.val != q.val:
return False
left = self.issameTree(p.left, q.left)
right = self.issameTree(p.right, q.rigth)
return left and right #从左侧和右侧同时出去判断节点是否相同,若有不同,则直接返回False