树的子结构
2016-04-02 22:19
393 查看
题目描述
输入两颗二叉树A,B,判断B是不是A的子结构。class Solution { public: bool HasSubtree(TreeNode* pRoot1, TreeNode* pRoot2) { bool result= false; if(pRoot1!=NULL&&pRoot2!=NULL){ if(pRoot2->val == pRoot2->val) result=equal(pRoot1,pRoot2); if(!result) result=equal(pRoot1->left,pRoot2); if(!result) result=equal(pRoot1->right,pRoot2); } return result; } bool equal(TreeNode* pa,TreeNode* pb) { if(pb==NULL) return true; if(pa==NULL) return false; if(pa->val!=pb->val) return false; return equal(pa->left,pb->left)&&equal(pa->right,pb->right); } };
相关文章推荐
- C 文件读写2
- 算法课笔记系列(四)—— 动态规划
- 关于在linux下无法使用tab键补全
- thinkphp3.2.3版本模板引擎会把反斜杠\过滤掉的解决办法
- 基于py3和pymysql的数据库查询,查询某几列的数据
- Powershell管理DHCP作用域
- My life
- 【BZOJ1076】[SCOI2008]奖励关【期望DP】【状压DP】
- 面向对象封装
- [iOS]TableView
- ACM学习路线
- 2016网易研发题目
- [C#]使textbox光标在最左边
- Python 基础 —— time(时间,日期)
- Android 学习记录-基础控件与布局
- java 运用表达式计算贷款金额
- c++ STL中的set和multiset的使用
- android 系统中对条件查找命令
- HDFS的Shell命令
- 汉诺塔游戏简单玩法