zoukankan      html  css  js  c++  java
  • 101. 对称二叉树-遍历两棵树-简单

    问题描述

    给定一个二叉树,检查它是否是镜像对称的。

    例如,二叉树 [1,2,2,3,4,4,3] 是对称的。

    1
    /
    2 2
    / /
    3 4 4 3
     

    但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的:

    1
    /
    2 2

    3 3
     

    进阶:

    你可以运用递归和迭代两种方法解决这个问题吗?

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/symmetric-tree

    解答

    /**
     * Definition for a binary tree node.
     * public class TreeNode {
     *     int val;
     *     TreeNode left;
     *     TreeNode right;
     *     TreeNode(int x) { val = x; }
     * }
     */
    //一次遍历两棵树,一颗左子树,一颗右子树
    
    class Solution {
        boolean flag;
        public void inorder(TreeNode left, TreeNode right){
            if(left == null && right == null)return;
            if(left != null && right != null){
                if(left.val == right.val){
                    inorder(left.left,right.right);
                    inorder(left.right,right.left);
                }else flag = false;
            }else flag = false;
        }
        public boolean isSymmetric(TreeNode root) {
            flag = true;
            if(root == null)return true;
            if(root.left == null && root.right == null) return true;
            else if(root.left != null && root.right != null) inorder(root.left,root.right);
            else return false;
            return flag;
        }
    }
  • 相关阅读:
    不要对春运抱有幻想
    初识HTTP消息头(一)
    java中ArrayList 、LinkList区别以及速度对比
    jar包和war包的区别
    LUA 日期处理
    NGINXLUA——变量浅谈
    JDK和JRE的区别
    理解HTTP消息头 (五)——使用multipart/formdata上传文件
    安装Jetty
    TOMCATJARWAR事例讲解
  • 原文地址:https://www.cnblogs.com/xxxxxiaochuan/p/13300208.html
Copyright © 2011-2022 走看看