- 难度: 简单
- 通过率: 49.0%
- 题目链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
题目描述
给定两个二叉树,编写一个函数来检验它们是否相同。
如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。
示例 1:
输入: 1 1/ \ / \2 3 2 3[1,2,3], [1,2,3]输出: true
示例 2:
输入: 1 1/ \2 2[1,2], [1,null,2]输出: false
示例 3:
输入: 1 1/ \ / \2 1 1 2[1,2,1], [1,1,2]输出: false
解法:
class Solution:def isSameTree(self, p, q):""":type p: TreeNode:type q: TreeNode:rtype: bool"""if (p == None) ^ (q == None):return Falseif (p == None) and (q == None):return Trueif p.val != q.val:return Falseif not self.isSameTree(p.left, q.left):return Falseif not self.isSameTree(p.right, q.right):return Falsereturn True