bool isSymmetric(TreeNode* root) { if(!root) return true; invertTree(root->left); return isSameTree(root->left,root->right); }
bool isSameTree(TreeNode* p, TreeNode* q) { if (!p && !q) return 1; if (p && q && p->val == q->val) return isSameTree(p->left,q->left) && isSameTree(p->right,q->right); return 0; }
bool isSameTree(TreeNode* p, TreeNode* q) { return (!p&&!q)||(p&&q&&(p->val == q->val))&&isSameTree(p->left, q->left)&&isSameTree(p->right, q->right); }
/* Same Tree Total Accepted: 82343 Total Submissions: 197584 Difficulty: Easy Given two binary trees, write a function to check if they are equal or not. Two binary trees are considered equal if they are structurally identical and the nodes have the same value. https://leetcode.com/problems/same-tree/ */ bool isSameTree(TreeNode* p, TreeNode* q) { if(p==NULL && q==NULL) return true; else if((p==NULL && q!=NULL)||(p!=NULL && q==NULL)) return false; if(p->val!=q->val) return false; else return isSameTree(p->left,q->left)&&isSameTree(p->right,q->right); }
bool isSameTree(TreeNode* p, TreeNode* q) { if(!p&&!q) return true; if(!p||!q) return false; return p->val==q->val&&isSameTree(p->left,q->left)&&isSameTree(p->right,q->right); }
bool isSameTree(TreeNode *p, TreeNode *q) { if(p == NULL || q == NULL) return p == q; return p->val == q->val && isSameTree(p->left, q->left) && isSameTree(p->right, q->right); }
/** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ bool isSameTree(struct TreeNode* p, struct TreeNode* q) { if (p == NULL && q == NULL) { return true; } if (p == NULL || q == NULL) { return false; } return (p->val == q->val) && isSameTree(p->left, q->left) && isSameTree(p->right, q->right); }
bool isSameTree(TreeNode* p, TreeNode* q){ return !p && !q ? true : (p && q && p->val == q->val ? isSameTree(p->left, q->left) && isSameTree(p->right, q->right) : false); }
bool isSameTree(TreeNode* p, TreeNode* q) { if (p == NULL) return q == NULL; if (q == NULL) return false; return (p->val == q->val) && isSameTree(p->left, q->left) && isSameTree(p->right, q->right); }
bool isSameTree(TreeNode* p, TreeNode* q) { if ((p == nullptr) || (q == nullptr)) { return p == q; } return (p->val == q->val) && isSameTree(p->left, q->left) && isSameTree(p->right, q->right); }
bool isSameTree(TreeNode *p, TreeNode *q) { if (!p && !q) return true; if ((p && !q) || (!p && q) || (p->val != q->val)) return false; return isSameTree(p->left, q->left) && isSameTree(p->right, q->right); }
bool isSameTree(TreeNode *p, TreeNode *q) { if (!p && !q) {return true;} if (!p || !q) {return false;} if (p->val != q->val) {return false;} return isSameTree(p->left, q->left) && isSameTree(p->right, q->right); }
bool isSymmetrical(TreeNode* pRoot) { if(pRoot == NULL) return true; return isSameTree(pRoot->left, pRoot->right); }
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->left) && isSameTree(p->right, q->right); }
bool isSymmetric(TreeNode* root) { TreeNode *p = copyTree(root); invertTree(p); return isSameTree(root,p); }