1.另一棵树的子树
题目:
给定两个非空二叉树 s 和 t,检验 s 中是否包含和 t 具有相同结构和节点值的子树。s 的一个子树包括 s 的一个节点和这个节点的所有子孙。s 也可以看做它自身的一棵子树。
思路:递归比较。判断两颗树是否有相同的结构,就是比较根节点的val值,如果相同,比较左右子树的节点值。这样就可以用递归处理。
如果遇到错误的,那么继续比较左子树或者右子树
/**
* Definition for a binary tree node.
* function TreeNode(val, left, right) {
* this.val = (val===undefined ? 0 : val)
* this.left = (left===undefined ? null : left)
* this.right = (right===undefined ? null : right)
* }
*/
/**
* @param {TreeNode} s
* @param {TreeNode} t
* @return {boolean}
*/
const isSubtreeAA = (s, t) => {
if (!s && !t) return true;
if (!s || !t) return false;
if (s.val !== t.val) return false;
return isSubtreeAA(s.left, t.left) && isSubtreeAA(s.right, t.right);
};
var isSubtree = function (s, t) {
if(!s)return false
if(