zoukankan      html  css  js  c++  java
  • 37: Symmetric Tree

    /************************************************************************/
            /*       37:      Symmetric Tree                                        */
            /************************************************************************/
            /*
             * Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center).

    For example, this binary tree is symmetric:

        1
       /
      2   2
     / /
    3  4 4  3

    But the following is not:

        1
       /
      2   2
         
       3    3

    Note:
    Bonus points if you could solve it both recursively and iteratively.

             * */
            
            //判断二叉树是否是对称树(非递归写起来真是。。。)

      public boolean isSymmetric(TreeNode root)
            {
                if(root==null)
                {
                    return true;
                }
                return IsMirror(root.left,root.right);
            }
            
            
            private Boolean IsMirror(TreeNode nodeleft,TreeNode noderight)
            {
                if(nodeleft==null&&noderight==null)
                {
                    return true;
                }
                if(nodeleft==null||noderight==null)
                {
                    return false;
                }
                return nodeleft.val==noderight.val&&IsMirror(nodeleft.left, noderight.right)&&IsMirror(nodeleft.right, noderight.left);
            }

  • 相关阅读:
    【Mysql】Mysql常见的日志种类及作用
    【Mysql】执行sql的过程
    【Mysql】回表查询原理,利用联合索引实现索引覆盖
    【Mysql】explain详解与索引最佳实践
    【Mybatis】MyBatis源码编译
    【Mysql】MySQL数据存储文件详解
    【LoadRunner-工作原理】
    【LoadRunner-简介】
    【LoadRunner-基础篇】
    【LoadRunner-基础篇】
  • 原文地址:https://www.cnblogs.com/theonemars/p/4254133.html
Copyright © 2011-2022 走看看