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.
/** * Definition for binary tree * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ public class Solution { public boolean isSameTree(TreeNode p, TreeNode q) { //special case1 if (p == null && q == null) return true; //if just one of the node is null, return false if (p == null || q == null) return false; return (p.val == q.val) && isSameTree(p.left, q.left) && isSameTree(p.right, q.right); } }
原文:http://www.cnblogs.com/Altaszzz/p/3700626.html