KK's blog

每天积累多一些

0%

LeetCode 100 Same Tree

LeetCode

<div>

Given the roots of two binary trees p and q, write a function to check if they are the same or not.

Two binary trees are considered the same if they are structurally identical, and the nodes have the same value.

Example 1:

<pre>Input: p = [1,2,3], q = [1,2,3] Output: true </pre>

Example 2:

<pre>Input: p = [1,2], q = [1,null,2] Output: false </pre>

Example 3:

<pre>Input: p = [1,2,1], q = [1,1,2] Output: false </pre>

Constraints:

  • The number of nodes in both trees is in the range [0, 100].
  • -10<sup>4</sup> <= Node.val <= 10<sup>4</sup>

</div>

题目大意:

判断二叉树是否相等

解题思路:

类似于Leetcode 101 Symmetric Tree但稍简单, easy题

解题步骤:

N/A

注意事项:

Python代码:

1
2
3
4
5
6
def isSameTree(self, p: TreeNode, q: TreeNode) -> bool:
if not p and not q:
return True
if not p or not q:
return False
return p.val == q.val and self.isSameTree(p.left, q.left) and self.isSameTree(p.right, q.right)

算法分析:

时间复杂度为O(n),空间复杂度O(1)

Free mock interview