给定两个二叉树,编写一个函数来检验它们是否相同。
如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。
package edu.LeetCode.相同的树;
public class Solution {
//p第一个树 q第二个树
public boolean isSameTree(TreeNode p, TreeNode q) {
if(p == null && q == null){
return true;
}
if(p == null || q == null){
return false;
}else{
return (p.val == q.val && isSameTree(p.left ,q.left) && isSameTree(p.right, q.right));
}
}
public static void main(String[] args) {
TreeNode p = new TreeNode(1);
p.left = new TreeNode(2);
p.right = new TreeNode(3);
TreeNode q = new TreeNode(1);
q.left = new TreeNode(2);
q.right = new TreeNode(3);
Solution s = new Solution();
System.out.println(s.isSameTree(p,q));
}
}