美文网首页
对称二叉树

对称二叉树

作者: 曾大稳丶 | 来源:发表于2022-04-27 10:55 被阅读0次

    题目链接:https://leetcode-cn.com/problems/symmetric-tree/

    image.png

    题目解析
    核心是判断这个二叉树的左右节点对应的值是否相等,left.right==right.left && left.left == right.right就意味着是符合规则的二叉树。

    1. 采用递归的思路进行判断
    public boolean isSymmetric(TreeNode root) {
            return check(root.left,root.right);
        }
    
        private boolean check(TreeNode left,TreeNode right){
            //判断到底
            if (left == null && right ==null){
                return true;
            }
           // 表示不符合规则
            if (left ==null || right ==null){
                return false;
            }
          // 不符合规则
            if (left.val != right.val){
                return false;
            }
            //left.right==right.left && left.left == right.right 判断
            return check(left.left,right.right) && check(left.right,right.left);
        }
    
    

    复杂度分析
    空间复杂度: O(N)。
    时间复杂度: O(N)。

    1. 采用递归加辅助队列的方式进行处理
    public boolean isSymmetric(TreeNode root) {
            return check(root.left,root.right);
        }
    
        private boolean check(TreeNode left,TreeNode right){
            Queue<TreeNode> queue = new LinkedList<>();
            queue.offer(left);
            queue.offer(right);
            while (!queue.isEmpty()){
                TreeNode p = queue.poll();
                TreeNode q = queue.poll();
    
                //某一个节点到底了
                if (p == null && q == null){
                    continue;
                }
    
                if (p==null || q ==null){
                    return false;
                }
                if (p.val != q.val){
                    return false;
                }
    
                queue.offer(p.left);
                queue.offer(q.right);
    
                queue.offer(p.right);
                queue.offer(q.left);
            }
    
            return true;
        }
    
    

    复杂度分析
    空间复杂度: O(N)。
    时间复杂度: O(N)。

    相关文章

      网友评论

          本文标题:对称二叉树

          本文链接:https://www.haomeiwen.com/subject/ysikyrtx.html