leetcode 100. Same Tree
2016-03-18 10:23
465 查看
100. Same Tree
题目
1,Given two binary trees, write a function to check if they are equal or not.2,Two binary trees are considered equal if they are structurally identical and the nodes have the same value.
3,Subscribe to see which companies asked this question
解
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: bool isSameTree(TreeNode* p, TreeNode* q) { if(p==NULL&&q==NULL){//当两棵树为空时,判定为same tree return true; }else if(p==NULL&& q!=NULL || p!=NULL && q==NULL){//一棵树为空时,另一棵树不为空时,判定两棵树不等 return false; }else{//当两棵树都不为空时,进行判断 if(p->val==q->val)//两棵树的值的判定 { if(isSameTree(p->left,q->left) && isSameTree(p->right,q->right)) {//两棵树左右子树递归判定 return true; } else { return false; } } else { return false; } } } };
写在后面
需要考虑的点:1,需要考虑树为空的情况,并且叶子节点的左右子树都为空;
2,递归的时候,应该考虑的是根节点的值相等。
相关文章推荐
- PHP 二维数组排序——array_multisort()
- 如何实例化i2c_client(四法)
- CcwpNewOrder_qq
- 理解Java中的弱引用
- Mybatis学习记录(六)----Mybatis的高级映射
- 获取结果集 json拼接
- JNI回调数据给android
- 设置tableView 的header和footer失去粘性以及底部出现空白的情况
- 快速排序的非递归实现
- UART的CTS和RTS
- 第三回,如何给需求分优先级(下)——老吴说产品
- CentOS Maven 的安装
- 《python计算机视觉编程》读书笔记------4(Numpy篇)
- back_suggest
- CSS3(五)——选择器
- 重载页面
- MYSQL—加写锁,加读锁,解锁
- 判断数据库中表是否存在
- C与C++程序的启动代码(startup)
- 2016-AspNet-MVC教学-3-基于EntityFramework数据模型的控制台测试