Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 5bf85dc

Browse files
101. Symmetric Tree
1 parent 90ac475 commit 5bf85dc

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

‎Trees/is_symmetric.py‎

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Given the root of a binary tree, check whether it is a mirror of itself
2+
# (i.e., symmetric around its center).
3+
4+
5+
# Example 1:
6+
# Input: root = [1,2,2,3,4,4,3]
7+
# Output: true
8+
9+
# Example 2:
10+
# Input: root = [1,2,2,null,3,null,3]
11+
# Output: false
12+
13+
14+
# Constraints:
15+
# The number of nodes in the tree is in the range [1, 1000].
16+
# -100 <= Node.val <= 100
17+
18+
19+
from typing import Optional
20+
# Definition for a binary tree node.
21+
class TreeNode:
22+
def __init__(self, val=0, left=None, right=None):
23+
self.val = val
24+
self.left = left
25+
self.right = right
26+
class Solution:
27+
def isSymmetric(self, root: Optional[TreeNode]) -> bool:
28+
def symmetric(root1, root2):
29+
if (not root1) and (not root2):
30+
return True
31+
if (not root1) or (not root2):
32+
return False
33+
if root1.val != root2.val:
34+
return False
35+
return (symmetric(root1.left, root2.right) and symmetric(root1.right, root2.left))
36+
37+
return symmetric(root, root)

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /