aboutsummaryrefslogtreecommitdiff
path: root/same_tree.py
diff options
context:
space:
mode:
Diffstat (limited to 'same_tree.py')
-rw-r--r--same_tree.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/same_tree.py b/same_tree.py
new file mode 100644
index 0000000..e42b63a
--- /dev/null
+++ b/same_tree.py
@@ -0,0 +1,31 @@
+# 100. Same 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.
+"""
+
+
+# Definition for a binary tree node.
+class TreeNode(object):
+ def __init__(self, val=0, left=None, right=None):
+ self.val = val
+ self.left = left
+ self.right = right
+
+
+class Solution(object):
+ def isSameTree(self, p, q):
+ """
+ :type p: TreeNode
+ :type q: TreeNode
+ :rtype: bool
+ """
+ if p is None and q is None:
+ return True
+ if p is None or q is None:
+ return False
+ if p.val == q.val:
+ return self.isSameTree(p.left, q.left) and self.isSameTree(p.right, q.right)
+ return False