当前位置: 首页 > 后端技术 > Java

JZ-017-TreeSubstructure

时间:2023-04-02 00:18:45 Java

TreeSubstructureTopicDescription输入两棵二叉树A和B,判断B是否是A的子结构。(ps:我们同意空树不是任何树的子结构)TopicLink:TreeSubstructureCode/***Title:TreeSubstructure*TitleDescription*输入两棵二叉树A和B,判断B是否为A子结构。(ps:我们同意空树不是任何树的子结构)*标题链接:*https://www.nowcoder.com/practice/6e196c44c7004d15b1610b9afca8bd88?tpId=13&&tqId=11170&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking*/publicclassJz17{publicstaticvoidmain(String[]args){TreeNoderoot1=newTreeNode(2);TreeNoderoot2=newTreeNode(2);Jz17jz17=newJz17();System.out.println(jz17.hasSubtree(root1,root2));}publicbooleanhasSubtree(TreeNoderoot1,TreeNoderoot2){if(root1==null||root2==null){returnfalse;}返回isSubtreeWithRoot(root1,root2)||hasSubtree(root1.left,root2)||hasSubtree(root1.right,root2);}/***递归方法**@paramroot1*@paramroot2*@return*/privatebooleanisSubtreeWithRoot(TreeNoderoot1,TreeNoderoot2){if(root2==null){returntrue;}如果(root1==null){返回假;}if(root1.val!=root2.val){返回false;}返回isSubtreeWithRoot(root1.left,root2.left)&&isSubtreeWithRoot(root1.right,root2.right);}}【每日留言】好久不见,但值得等待