题解 | #对称的二叉树#
对称的二叉树
http://www.nowcoder.com/practice/ff05d44dfdb04e1d83bdbdab320efbcb
- 空树也是对称树。
- 如果时false就返回。
/* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { } }; */ class Solution { public: bool isSymmetrical(TreeNode* pRoot) { if(!pRoot) return true;//空的是对称树 return isS(pRoot,pRoot); } bool isS(TreeNode* left, TreeNode* right){ if(!left&&!right) return true; if(!left||!right) return false; if(left->val!= right->val) return false; return isS(left->left, right->right)&&isS(left->right, right->left);//从根节点开始就开始对称了。 } };
剑指Offer 文章被收录于专栏
剑指offer的解析结合