7、js实现相同的树

59 阅读1分钟

题目

给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。

如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。

图片.png

输入: p = [1,2,3], q = [1,2,3]
输出: true

思路

  1. 两节点不存在
  2. 其中一个节点不存在
  3. 节点的值不相同
  4. 递归判断

代码

var isSameTree = function(p, q) {

    if(!q&&!p) return true

    else if(!p||!q) return false

    else if(p.val!==q.val) return false

    else return isSameTree(p.left,q.left)&&isSameTree(p.right,q.right)

};