2013年10月25日星期五

Leetcoder - 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.

/**
 * 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) {
        // Note: The Solution object is instantiated only once and is reused by each test case.
        return checkNode(p, q);
    }
   
    public boolean checkNode(TreeNode p, TreeNode q) {
        if(p==null && q==null) {
            return true;
        }
        if(p!=null && q!=null && p.val==q.val) {
            boolean sameL = checkNode(p.left, q.left);
            if(sameL) {
                return checkNode(p.right, q.right);
            } else {
                return false;
            }
        } else {
            return false;
        }
    }
}

没有评论:

发表评论