21树的子结构--剑指offer,java版
2019-03-14 22:00
204 查看
21树的子结构–剑指offer,java版
题目描述
输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)
/** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } */ public class Solution { //第一步判断:A某一节点的值和B头节点相同 public boolean HasSubtree(TreeNode root1,TreeNode root2) { boolean result = false; if(root1 != null && root2 != null){ if(root1.val == root2.val) result = DoesSubtree(root1,root2); if(!result) result = HasSubtree(root1.left,root2); if(!result) result = HasSubtree(root1.right,root2); } return result; } //再递归的判断左右节点的值是否相同 public boolean DoesSubtree(TreeNode node1,TreeNode node2){ if(node2 == null) return true; if(node1 == null) return false; if(node1.val != node2.val) return false; return DoesSubtree(node1.left,node2.left) && DoesSubtree(node1.right,node2.right); } }
相关文章推荐
- 剑指offer----树的子结构----java实现
- 剑指Offer:面试题21——包含min函数的栈(java实现)
- 剑指offer:树的子结构(java)
- 【剑指offer——JAVA实现】树的子结构
- 剑指Offer面试题18(Java版):树的子结构
- 剑指Offer:树的子结构(JAVA)
- 【剑指offer-Java版】21包含min函数的栈
- 剑指offer--面试题21:包含min函数的栈--Java实现
- 剑指Offer面试题18(Java版):树的子结构
- Java - 剑指offer_面试题21_包含min函数的栈
- 剑指offer解题报告(Java版)——树的子结构 18
- 剑指Offer--面试题18:数的子结构--Java实现
- 【剑指offer-Java版】18树的子结构
- 剑指offer面试题21(java实现)
- 剑指Offer--【树的子结构】--java
- 剑指offer——树的子结构 (JAVA代码)
- 剑指offer题目的Java实现
- 剑指offer面试题18:树的子结构
- 剑指offer面试题18-:树的子结构
- 剑指Offer--018-树的子结构(判断B树是不是A树的一颗子树)