• Leetcode 101. 对称二叉树 简单


    101. 对称二叉树

    题目:

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

    思路1:

    递归,根节点的左右子树相同,左子树的左子树和右子树的右子树相同,左子树的右子树和右子树的左子树相同即可

    class Solution {
    public:
        bool isSymmetric(TreeNode* root) {
            if(root==nullptr)
                return true;
            return sol(root->left,root->right);
        }
        bool sol(TreeNode* left,TreeNode* right){
            if(left==nullptr&&right==nullptr){
                return true;
            }
            if(left==nullptr||right==nullptr){
                return false;
            }
            if(left->val!=right->val){
                return false;
            }
            return sol(left->left,right->right)&&sol(left->right,right->left);
        }
    };

    思路2:

    非递归。往栈中放入left和right

    而后成对放入left->left&right->right 和 left->right&right->left

    每次取出两个对比

    class Solution {
    public:
        bool isSymmetric(TreeNode* root) {
            if(root==nullptr)
                return true;
            stack<TreeNode*> stk;
            stk.push(root->left);
            stk.push(root->right);
            while(!stk.empty()){
                TreeNode* left=stk.top();
                stk.pop();
                TreeNode* right=stk.top();
                stk.pop();
                if(left==nullptr&&right==nullptr)
                    continue;
                if(left==nullptr||right==nullptr)
                    return false;
                if(left->val!=right->val)
                    return false;
                stk.push(left->left);
                stk.push(right->right);
                stk.push(left->right);
                stk.push(right->left);
            }
            return true;
        }
        
    };
  • 相关阅读:
    Flink 双流合并之connect Demo2
    Flink 双流合并之connect Demo1
    Flink 双流合并Join
    Flink状态保存CheckPoint
    Flink状态之OperatorState
    Flink状态之AggregateState
    Flink状态之ReduceState
    Flink状态之MapState
    Flink状态之KeyedListState
    大数据框架环境安装与配置01--服务器基本设置
  • 原文地址:https://www.cnblogs.com/zl1991/p/16013334.html
Copyright © 2020-2023  润新知