思路:
- 要是两棵树都为空,即为相同的二叉树;
- 要是一棵树为空,另一棵树不为空,则不相等;
- 二叉树的节点值相等,且左右子树相等;
递归思想:
判断节点的值,然后再判断左右子树。
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, val=0, left=None, right=None):
# self.val = val
# self.left = left
# self.right = right
class Solution:
def isSameTree(self, p: TreeNode, q: TreeNode) -> bool:
if p==None and q==None:
return True
elif p==None or q==None:
return False
return q.val==p.val and self.isSameTree(p.left,q.left) and self.isSameTree(p.right,q.right)