We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent dfd3e66 commit 2d16a34Copy full SHA for 2d16a34
Tree/Symmetric Tree
@@ -0,0 +1,23 @@
1
+就只想到 广度遍历,然后检查每一层上的节点。。甚至是要回文似的判断,其实思维再转一下,其关键是镜子效应,left->left == right->right
2
+和 left->right == right->left 所以以此为小分支递归下去,同样也可以以这样的顺序存放在栈中,直接判断相等后再将相应的节点存入
3
+关于二叉树的灵活应用
4
+
5
+class Solution {
6
+ private:
7
+ bool leftRight(TreeNode *left,TreeNode *right)
8
+ {
9
+ if(!left && !right)
10
+ return true;
11
+ if(!left || !right)
12
+ return false;
13
+ if(left->val != right ->val)
14
15
+ return leftRight(left->left,right->right) && leftRight(left->right,right->left);
16
+ }
17
18
+ public:
19
+ bool isSymmetric(TreeNode *root) {
20
+ return root == nullptr? true: leftRight(root->left,root->right);
21
22
23
+ };
0 commit comments