zoukankan      html  css  js  c++  java
  • (树)判断一颗二叉树是否为镜像对称

    • 原题:https://www.nowcoder.com/practice/1b0b7f371eae4204bc4a7570c84c2de1?tpId=46&tqId=29077&tPage=3&rp=3&ru=/ta/leetcode&qru=/ta/leetcode/question-ranking

    • 思路:
      • //判断一个数是否为镜像对称:先判断根,在判断左右子树。如果左右子树都为空那就是,如果左右子树不是同时为空那就不是
            //当左右子树都存在的时候,判断他们的值是否相等,如果相等那么久递归的对他们的字节点判断(左边的左=右边的右;左边的右==右边的左)

    • 代码
      /**
       * Definition for binary tree
       * struct TreeNode {
       *     int val;
       *     TreeNode *left;
       *     TreeNode *right;
       *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
       * };
       */
      class Solution {
      public:
          //判断一个数是否为镜像对称:先判断根,在判断左右子树。如果左右子树都为空那就是,如果左右子树不是同时为空那就不是
          //当左右子树都存在的时候,判断他们的值是否相等,如果相等那么久递归的对他们的字节点判断(左边的左=右边的右;左边的右==右边的左)
          bool isSymmetric(TreeNode *root) {
              if (!root)
                  return true;
              return Symmetric(root->left, root->right);
          }
          bool Symmetric(TreeNode *left, TreeNode *right){
              if (!left && !right)
                  return true;
              if (!left || !right)
                  return false;
              if (left->val == right->val){
                  return (Symmetric(left->left, right->right) && Symmetric(right->left, left->right));
              }
              return false;
          }
      };
  • 相关阅读:
    零散
    修改element的内部样式的两种方式
    在vue-cli项目中使用第三方的js,不是es6格式
    Docker知识
    golang使用grpc
    vue中axios导出文件
    nginx、vue和thinkphp配置
    Mysql的一些问题
    数据库索引失效原因
    golang中使用grpc服务
  • 原文地址:https://www.cnblogs.com/Kobe10/p/6340232.html
Copyright © 2011-2022 走看看