[leetcode] Same Tree
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.
https://oj.leetcode.com/problems/same-tree/
思路:递归判断,注意null的处理。
public class Solution { public boolean isSameTree(TreeNode p, TreeNode q) { if (p == null && q == null) return true; else if (p == null && q != null || p != null && q == null) return false; else return isSameTree(p.left, q.left) && isSameTree(p.right, q.right) && p.val == q.val; } }
第二遍记录:null check 可以简化
class Solution { public boolean isSameTree(TreeNode p, TreeNode q) { if(p==null || q==null){ return p==q; }else{ return p.val==q.val&&isSameTree(p.left,q.left)&&isSameTree(p.right,q.right); } } }