1: /**
2: * Definition for a binary tree node.
3: * struct TreeNode {
4: * int val;
5: * TreeNode *left;
6: * TreeNode *right;
7: * TreeNode(int x) : val(x), left(NULL), right(NULL) {}
8: * };
9: */
10: class Solution {
11: public:
12: bool isSymmetric(TreeNode* root) {
13: if (root == NULL) return true;
14: return helper(root->left, root->right);
15: }
16: bool helper(TreeNode *p, TreeNode *q) {
17: if (p == NULL && q == NULL) return true;
18: if (p == NULL && q != NULL || p != NULL && q == NULL || p->val != q->val) return false;
19: return helper(p->left, q->right) && helper(p->right, q->left);
20: }
21: };
Wednesday, August 10, 2016
101. Symmetric Tree
Well, pretty straightforward DFS solution.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment