zoukankan      html  css  js  c++  java
  • Leetcode-951 Flip Equivalent Binary Trees(翻转等价二叉树)

     1 class Solution
     2 {
     3     public:
     4         void swapTree(TreeNode *root)
     5         {
     6             TreeNode *p= root->left;
     7             root->left = root->right;
     8             root->right=p;
     9         }
    10         bool isSameTree(TreeNode* p, TreeNode* q)
    11         {
    12             if(!p&&!q)
    13                 return true;
    14             else if(p&&!q)
    15                 return false;
    16             else if(!p&&q)
    17                 return false;
    18             if(p->val!=q->val)
    19                 return false;
    20             return isSameTree(p->left,q->left)&&isSameTree(p->right,q->right);
    21         }
    22         bool nodeequal(TreeNode* p, TreeNode* q)
    23         {
    24             if(p->left==NULL&&q->left!=NULL
    25             ||p->right==NULL&&q->right!=NULL
    26             ||p->left!=NULL&&q->left==NULL
    27             ||p->right!=NULL&&q->right==NULL)
    28                 return false;
    29             if(p->left&&p->left->val!=q->left->val)
    30                 return false;
    31             if(p->right&&p->right->val!=q->right->val)
    32                 return false;
    33             return true;
    34         }
    35         bool flipEquiv(TreeNode* root1, TreeNode* root2)
    36         {
    37             if(root1==NULL&&root2!=NULL||
    38             root1!=NULL&&root2==NULL)
    39                 return false;
    40             if(root1==NULL&&root2==NULL)
    41                 return true;
    42             if(root1->left&&root1->right
    43                     &&!root2->right&&!root2->left)
    44                 return false;
    45             if(!nodeequal(root1,root2))
    46                 swapTree(root2);
    47             flipEquiv(root1->left,root2->left);
    48             flipEquiv(root1->right,root2->right);
    49             return isSameTree(root1,root2);
    50         }
    51 };
  • 相关阅读:
    jquery animate()方法 语法
    jquery unload方法 语法
    jquery undelegate()方法 语法
    jquery unbind()方法 语法
    jquery trigger() 方法 语法
    jquery toggle()方法 语法
    jquery change() 函数 语法
    jquery blur()函数 语法
    jquery bind()方法 语法
    jquery checked选择器 语法
  • 原文地址:https://www.cnblogs.com/Asurudo/p/10052883.html
Copyright © 2011-2022 走看看