LeetCode 100. Same Tree

来源:互联网 发布:html转xml python 编辑:程序博客网 时间:2024/06/06 05:55
Given two binary trees, write a function to check if they are equal or not.

Two binary trees are considered equal if they are structurally identical and the nodes have the same value.

public class Solution {    public boolean isSameTree(TreeNode p, TreeNode q) {        //非循环实现        /*if(p==null && q==null){  //两棵空树            return true;        }        else if(p==null || q==null){  //一棵空树,一棵非空树            return false;        }        else{               //两棵非空树            Stack<TreeNode> s1=new Stack<TreeNode>();            Stack<TreeNode> s2=new Stack<TreeNode>();            s1.push(p);            s2.push(q);            try{                while(s1!=null && s2!=null){                TreeNode ps=s1.pop();                TreeNode qs=s2.pop();                if(ps.val!=qs.val){                    return false;                }else{                    if(ps.left!=null && qs.left!=null){ //左子树同时不为空                        s1.push(ps.left);                        s2.push(qs.left);                    }else if(ps.left!=null || qs.left!=null){ //左子树不同时为空                        return false;                    }                    if(ps.right!=null && qs.right!=null){ //右子树同时为空                        s1.push(ps.right);                        s2.push(qs.right);                    }else if(ps.right!=null || qs.right!=null){ //右子树不同时为空                        return false;                    }                }            }                if(s1==null && s2==null){  //两棵树的节点一样多                return true;                 }else{                return false;                 }                        }catch(Exception e){                            }                        return true;        }*/                //循环实现        if(p==null && q==null){            return true;        }        else if(p==null || q==null){            return false;        }        else{            if(p.val==q.val){            return (isSameTree(p.left,q.left)&& isSameTree(p.right,q.right));            }else{                return false;            }                    }    }}

0 0
原创粉丝点击