From 41905f6970f944f99dcc553dbdb1807aec55127b Mon Sep 17 00:00:00 2001
From: Sandesh Kumar <96278931+I-sandesh@users.noreply.github.com>
Date: Sun, 15 Oct 2023 19:11:51 +0530
Subject: [PATCH 1/2] Create README.md
---
Symmetric Tree/README.md | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
create mode 100644 Symmetric Tree/README.md
diff --git a/Symmetric Tree/README.md b/Symmetric Tree/README.md
new file mode 100644
index 0000000..4037d46
--- /dev/null
+++ b/Symmetric Tree/README.md
@@ -0,0 +1,25 @@
+
Given the root of a binary tree, check whether it is a mirror of itself (i.e., symmetric around its center).
+
+
+
Example 1:
+

+
Input: root = [1,2,2,3,4,4,3]
+Output: true
+
+
+
Example 2:
+

+
Input: root = [1,2,2,null,3,null,3]
+Output: false
+
+
+
+
Constraints:
+
+
+ - The number of nodes in the tree is in the range
[1, 1000].
+ -100 <= Node.val <= 100
+
+
+
+
Follow up: Could you solve it both recursively and iteratively?
From 0759328d93b950213cd1763d6f721e3139db931a Mon Sep 17 00:00:00 2001
From: Sandesh Kumar <96278931+I-sandesh@users.noreply.github.com>
Date: Sun, 15 Oct 2023 19:12:52 +0530
Subject: [PATCH 2/2] Create symmetric-tree.cpp
---
Symmetric Tree/symmetric-tree.cpp | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
create mode 100644 Symmetric Tree/symmetric-tree.cpp
diff --git a/Symmetric Tree/symmetric-tree.cpp b/Symmetric Tree/symmetric-tree.cpp
new file mode 100644
index 0000000..7e3acc6
--- /dev/null
+++ b/Symmetric Tree/symmetric-tree.cpp
@@ -0,0 +1,29 @@
+/**
+ * Definition for a binary tree node.
+ * struct TreeNode {
+ * int val;
+ * TreeNode *left;
+ * TreeNode *right;
+ * TreeNode() : val(0), left(nullptr), right(nullptr) {}
+ * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
+ * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
+ * };
+ */
+class Solution {
+public:
+ bool isSameTree(TreeNode* p, TreeNode* q){
+ if(p==NULL && q==NULL)
+ return true;
+ if(p==NULL || q==NULL)
+ return false;
+ if(p->val!=q->val)
+ return false;
+ return isSameTree(p->left,q->right)&&isSameTree(p->right,q->left);
+}
+
+ bool isSymmetric(TreeNode* root){
+ if(root==NULL)
+ return true;
+ return isSameTree(root->left,root->right);
+ }
+};