Skip to content

Commit 75175f0

Browse files
(Iteratively)_Symmetric_Tree
1 parent 60c3cbb commit 75175f0

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

101(Iteratively)_Symmetric_Tree.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Definition for a binary tree node.
2+
# class TreeNode(object):
3+
# def __init__(self, x):
4+
# self.val = x
5+
# self.left = None
6+
# self.right = None
7+
8+
class Solution(object):
9+
10+
def isSymmetric(self, root):
11+
"""
12+
:type root: TreeNode
13+
:rtype: bool
14+
"""
15+
if root is None:
16+
return True
17+
stack = [[root.left, root.right]]
18+
while len(stack) > 0:
19+
pair = stack.pop(0)
20+
left = pair[0]
21+
right = pair[1]
22+
if None == left and None == right:
23+
continue
24+
elif None == left or None == right:
25+
return False
26+
elif left.val == right.val:
27+
stack.insert(0,[left.left, right.right])
28+
stack.insert(0,[left.right, right.left])
29+
else:
30+
return False
31+
return True

0 commit comments

Comments
 (0)