相同的树
只是基础的俩个树同步遍历看是否相同
package binarytree.isSameTree; import binarytree.untils.GenerateTreeNode; import binarytree.untils.TreeNode; /** * 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 * <p> * 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 * <p> * <p> * <p> * 示例 1: * <p> * <p> * 输入:p = [1,2,3], q = [1,2,3] * 输出:true * 示例 2: * <p> * <p> * 输入:p = [1,2], q = [1,null,2] * 输出:false * 示例 3: * <p> * <p> * 输入:p = [1,2,1], q = [1,1,2] * 输出:false * <p> * <p> * 提示: * <p> * 两棵树上的节点数目都在范围 [0, 100] 内 * -104 <= Node.val <= 104 **/ public class isSameTree { //简单的俩个二叉树同步 public static 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 false; } return isSameTree(p.left, q.left) && isSameTree(p.right, q.right); } public static void main(String[] args) { Integer[] a = {1, 2, 1}; Integer[] b = {1, 1, 2}; TreeNode t = GenerateTreeNode.generateTreeNode(a); TreeNode t1 = GenerateTreeNode.generateTreeNode(a); System.out.println(isSameTree(t, t1)); } }
不会,我可以学;落后,我可以追赶;跌倒,我可以站起来!