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);
            }

  • 相关阅读:
    centos7 源码安装python3
    gitlab 迁移
    gitlab 搭建
    亚伦史沃茨 公开信
    误删了sudo包怎么办
    在中国历史上,我个人最喜欢的三个皇帝
    安装PHP7
    Mac OS上设置Django开发环境
    The Pragmatic Programmer Quick Reference Guide
    Nginx的第一个模块-HelloWorld
  • 原文地址:https://www.cnblogs.com/theonemars/p/4254133.html
Copyright © 2011-2022 走看看