本文共 642 字,大约阅读时间需要 2 分钟。
先构造一颗对称二叉树,再判断;
class Solution {public: TreeNode* solve(TreeNode* b){ if(b == NULL) return NULL; TreeNode* a = new TreeNode(b->val);; a->left = solve(b->right); a->right = solve(b->left); return a; } bool judge(TreeNode* a,TreeNode* b){ if(a==NULL && b == NULL) return true; if(a == NULL || b == NULL) return false; if(a -> val != b -> val) return false; return judge(a->left,b->left) && judge(a->right,b->right); } bool isSymmetrical(TreeNode* pRoot) { TreeNode* newRoot = pRoot; newRoot = solve(pRoot); return judge(newRoot,pRoot); }};
转载地址:http://oywji.baihongyu.com/