博客
关于我
[Easy] 100. Same Tree
阅读量:342 次
发布时间:2019-03-04

本文共 746 字,大约阅读时间需要 2 分钟。

判断两个二叉树是否相同,需要确保它们的结构和节点值完全一致。我们可以通过递归的方式来比较这两个二叉树的每个节点。

首先,检查两个节点是否都是空的,如果是,则返回true。如果其中一个为空而另一个不为空,则返回false。接着,比较两个节点的值,如果不相同,返回false。否则,递归地比较左子树和右子树是否相同。

以下是实现代码:

判断两棵二叉树是否相同

给定两个二叉树,判断它们是否相同。两棵二叉树被认为是相同的,如果它们的结构和节点值完全一致。

示例1:

输入:     1    / \   2   3  [1,2,3], [1,2,3]输出: true

示例2:

输入:     1    /     \   2       2  [1,2], [1,null,2]输出: false

示例3:

输入:     1    / \    2   1  [1,2,1], [1,1,2]输出: false

解决方案

class Solution {public:    bool isSameTree(TreeNode* p, TreeNode* q) {        if (p == nullptr && q == nullptr) return true;        if (p == nullptr || q == nullptr) return false;        if (p->val != q->val) return false;        return isSameTree(p->left, q->left) && isSameTree(p->right, q->right);    }}

转载地址:http://sfir.baihongyu.com/

你可能感兴趣的文章
刷题计划1——poj1753
查看>>
蓝桥杯备战——刷题(2019)
查看>>
未定义的变量“py”或函数“py.command”
查看>>
我们,都一样......(句句入心)
查看>>
总结了一下c/c++函数和变量的命名规则
查看>>
关于构造函数内调用虚函数的问题
查看>>
最短路径问题—Dijkstra算法
查看>>
求二叉树的深度
查看>>
万物皆可爬系列查看翻页翻到最后是什么
查看>>
A Guide to Node.js Logging
查看>>
webwxbatchgetcontact一个神奇的接口
查看>>
Edge浏览器:你的的内核我的芯
查看>>
git命令升级版用法
查看>>
sed常用命令
查看>>
checksec未完待续~
查看>>
python pexpect
查看>>
inode索引节点的概念
查看>>
create-react-app第一步
查看>>
testng测试工具简介
查看>>
怎么去利用已有的数据做分析?
查看>>