算法题目-树的子结构
来源:互联网 发布:二进制数据转换字符串 编辑:程序博客网 时间:2024/06/09 15:48
输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)
分析:
分为两步:1、检查A中是否有与B的根节点相同的结点R
2、以R为根节点的子树是否包含和数B一样的结构。
解答:
/**public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; }}*/public class Solution { public boolean HasSubtree(TreeNode root1,TreeNode root2) { boolean result=false; if((root1!=null)&&(root2!=null)){ if(root1.val==root2.val){ result=DoesTree1HasTree2(root1,root2); } if(!result){ result=HasSubtree(root1.left,root2); } if(!result){ result=HasSubtree(root1.right,root2); } } return result; } public boolean DoesTree1HasTree2(TreeNode root1,TreeNode root2){ if((root1==null)&&(root2!=null)){ return false; } if(root2==null){ return true; } if(root1.val!=root2.val){ return false; } return DoesTree1HasTree2(root1.left,root2.left)&&DoesTree1HasTree2(root1.right,root2.right); }}
阅读全文
0 0
- 算法题目-树的子结构
- 算法题目---树的子结构
- 题目1520:树的子结构
- 题目1520:树的子结构
- 题目1520:树的子结构
- 题目1520:树的子结构
- 题目1520:树的子结构
- 题目18:树的子结构
- 每天一道算法题目(17)——二叉树的子结构
- 题目1520:树的子结构-九度
- 九度 题目1520:树的子结构
- 九度OJ-题目1520:树的子结构
- 【编程题目】Pq.11--树的子结构
- 剑指Offer题目1520:树的子结构
- [算法学习]树的子结构
- 算法复习:树的子结构
- 剑指Offer算法实现之十八:树的子结构
- 面试算法(十七)树的子结构
- 自己动手编译最新Android源码及SDK
- Fragment+ViewPager
- validate插件的使用举例
- Android Fragment 真正的完全解析(上)
- uiautomatorviewer报错解决方法
- 算法题目-树的子结构
- const,volatile分析
- 加强进度控制ProgressCtrlX进度条类
- iOS小demo之根据路径获取文件大小
- Android7.0中文文档(API)--- ViewSwitcher
- Android Fragment 真正的完全解析(下)
- Mysql总结(一)
- 为什么要使用微服务
- mysql查询表中前一条和后一条数据