【Leetcode长征系列】Same tree
来源:互联网 发布:软件piano 编辑:程序博客网 时间:2024/04/29 19:21
原题:
Given two binary trees, write a function to check if they are equal or not.
Two binary trees are considered equal if they are structurally identical and the nodes have the same value.
感觉本题和求树的最大深度问题相似,递归即可解决。第一次报错的原因是if语句过后的else状况分的不够清楚导致runtime error。
第二次报错则是因为读题不够仔细没有注意到还需要对比树节点的值。都是挺二的错误> ///// <
总结一下也是编程思路不清西, 每次用if else语句的时候一定要将所有的关系划分清楚,不要有重叠的部分,也不要有遗漏的部分,不然很容易出现runtime error。
代码如下:
/**
* Definition for binary tree
* 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) return true;
else if ((p==NULL&&q!=NULL)||(p!=NULL&&q==NULL)) return false;
else if (p->val==q->val)
return (isSameTree(p->left,q->left) && isSameTree(p->right,q->right));
else return false;
}
};
- 【Leetcode长征系列】Same tree
- 【Leetcode长征系列】Symmetric Tree
- 【Leetcode长征系列】Binary Tree Preorder Traversal
- 【Leetcode长征系列】Binary Tree Inorder Traversal
- 【Leetcode长征系列】Binary Tree Postorder Traversal
- 【Leetcode长征系列】Validate Binary Search Tree
- 【Leetcode长征系列】Maxmium depth of binary tree
- 【Leetcode长征系列】Binary Tree Level Order Traversal
- 【Leetcode长征系列】Binary Tree Level Order Traversal II
- 【Leetcode长征系列】Minimum Depth of Binary Tree
- 【Leetcode长征系列】Flatten Binary Tree to Linked List
- 【Leetcode长征系列】Convert Sorted Array to Binary Search Tree
- 【Leetcode长征系列】Convert Sorted List to Binary Search Tree
- 【Leetcode长征系列】Permutations
- [leetcode刷题系列]Same Tree
- Leetcode - Tree - Same Tree
- [leetcode][tree] Same Tree
- 【Leetcode长征系列】Single Number
- Effective Java (2) 遇到多个构造器时要靠虑使用构建器
- 黑马程序员----Class类、反射(Reflect)
- iOS country code及国际区号
- secureCrt常用命令
- C++ STL编程轻松入门
- 【Leetcode长征系列】Same tree
- 京东为什么选Win/.Net构架及问题点分析
- 关于Axuer7.0高级交互设计学习笔记——如何制作复选框的全部选中效果
- Linux下使用ffmpeg从视频提取图片
- oracle字符集的查看与修改
- UIView+Border(添加任意一边)
- 父类类型的引用指向子类的对象
- think in java第五章笔记
- Hbase配置手册