[LeetCode] 100. Same Tree

传送门

Description

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.

思路

题意:给出两棵二叉搜索树,判断这两棵二叉搜索树是否相同

题解:前序遍历+中序遍历或后序遍历+中序遍历可以完全确定一颗二叉搜索树(数据中第52组:[1,null,1] [1,1],此种写法挂在了这里);或者直接递归搜索的过程判断。

 

/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode(int x) { val = x; }
 * }
 */
class Solution {
    public boolean isSameTree(TreeNode p, TreeNode q) {
        if (p == null && q == null) return true;
        if (p == null || q == null) return false;
        if (p.val == q.val) return isSameTree(p.left,q.left) && isSameTree(p.right,q.right);
        else    return false;
    }
}

  

posted @ 2017-09-30 15:28  zxzhang  阅读(212)  评论(0)    收藏  举报