请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。...

mac2022-06-30  71

/*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) { return sym(pRoot,pRoot); } bool sym(TreeNode* pRoot1,TreeNode* pRoot2) { if(pRoot1==NULL&&pRoot2==NULL) return true; if((pRoot1==NULL&&pRoot2!=NULL)||(pRoot1!=NULL&&pRoot2==NULL)) return false; if(pRoot1->val!=pRoot2->val) return false;

return sym(pRoot1->left,pRoot2->right)&&sym(pRoot1->right,pRoot2->left); }

};

转载于:https://www.cnblogs.com/yuanch2019/p/11589819.html

最新回复(0)