码迷,mamicode.com
首页 > 其他好文 > 详细

对称的二叉树

时间:2017-08-31 17:14:07      阅读:296      评论:0      收藏:0      [点我收藏+]

标签:article   als   href   面试   highlight   bsp   jee   turn   post   

题目描述

请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。
 
/*
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==NULL)	return true;
        TreeNode * pRight=pRoot->right;
        TreeNode * pLeft=pRoot->left;
        if(pRight==NULL && pLeft==NULL)	return true;
        if(pRight==NULL || pLeft==NULL)	return false;
        return f(pRight,pLeft);
        
    }
    
    bool f(TreeNode * pLroot,TreeNode * pRroot) {
        if(pLroot==NULL && pRroot==NULL)	return true;
        if(pLroot==NULL || pRroot==NULL)	return false;
        if(pLroot->val!=pRroot->val)	return false;
        
        TreeNode * pL1=pLroot->left;
        TreeNode * pL2=pLroot->right;
        
        TreeNode * pR1=pRroot->left;
        TreeNode * pR2=pRroot->right;
    	
        return f(pL1,pR2)&&f(pL2,pR1);
    }

};

 

 

 

对称的二叉树(剑指offer+镜面对称+递归)

 

(剑指Offer)面试题59:对称的二叉树

 

 

 

对称的二叉树

标签:article   als   href   面试   highlight   bsp   jee   turn   post   

原文地址:http://www.cnblogs.com/dd2hm/p/7459211.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!