算法6 Same Tree

来源:互联网 发布:万能网络摄像机客户端 编辑:程序博客网 时间:2024/06/08 12:04

题目:给出两个二叉树,写一个方法判断这两个树是否相同。
两个二叉树如果结构一致,并且每个节点有相同的值,则我们认为它们相同。

思路:先判断两个二叉树的每个对应位置节点相不相同,主要是用到递归。

代码:

public boolean isSameTree(TreeNode p, TreeNode q) {    //若搜索到同时为 null 说明搜索完了还是对的,那就是true    if(p == null && q == null) return true;    //若一个null,一个不null,明显返回false    if(p == null || q == null) return false;    //如果相等继续往下判断    if(p.val == q.val)        return isSameTree(p.left, q.left) && isSameTree(p.right, q.right);    return false;}
原创粉丝点击