layout: leetcode
title: "100. Same Tree"
categories: [leetcode]
---

[Leetcode Link](https://leetcode.com/problems/same-tree/)
| [Tree template](/template/tree)

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.

Solution:

```python
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)
```
