等价二叉树
来源:互联网 发布:淘宝如何申请中国制造 编辑:程序博客网 时间:2024/06/04 01:21
一.题目描述
检查两棵二叉树是否等价。等价的意思是说,首先两棵二叉树必须拥有相同的结构,并且每个对应位置上的节点上的数都相等。
样例
1 1 / \ / \ 2 2 and 2 2 / /4 4
就是两棵等价的二叉树。
1 1 / \ / \ 2 3 and 2 3 / \4 4
就不是等价的。
先判断两棵二叉树的根节点是否为空,若都为空则返回true,若都不为空且数值相等,则利用递归的方法依次判断
它们的左子树和右子树,如果其中有一个节点为空另一个节点不为空或两个节点的数值不相等,就直接返回flase。
三.实现代码
/**
* Definition of TreeNode:
* class TreeNode {
* public:
* int val;
* TreeNode *left, *right;
* TreeNode(int val) {
* this->val = val;
* this->left = this->right = NULL;
* }
* }
*/
class Solution {
public:
/**
* @aaram a, b, the root of binary trees.
* @return true if they are identical, or false.
*/
bool isIdentical(TreeNode* a, TreeNode* b) {
// Write your code here
if(a==NULL&&b==NULL) return true;
if(a!=NULL&&b!=NULL&&a->val==b->val)
return isIdentical(a->left,b->left)&&isIdentical(a->right,b->right);
else
return false;
}
};
- LintCode_469_等价二叉树
- LintCode:等价二叉树
- lintcode ----等价二叉树
- 等价二叉树
- 等价二叉树-lintcode
- 等价二叉树,lintcode
- lintcode-->等价二叉树
- lintcode,等价二叉树
- 等价二叉树
- LintCode-等价二叉树
- 等价二叉树
- 等价二叉树
- 等价二叉树
- LIntCode 等价二叉树
- 等价二叉树
- 等价二叉树-LintCode
- 等价二叉树
- 等价二叉树
- HOJ 1867 经理的烦恼
- 计算组合数 (sdut oj)
- RestTemplate访问Rest服务总结
- CentOS6下编译、安装Redis源码
- Windows下Pycharm使用Tensorflow、Theano和Keras的方法
- 等价二叉树
- CentOS 7 安装 MySQL
- JS脚本编写保存Cookie
- IMWeb训练营作业--VUE练习,ToDoList
- 理解java反射
- 形式参数和返回值的类型问题
- Quartz 基本概念
- Hibernate中的QBC(criteria 和 DetachedCriteria)
- 字符、字符串数组