力扣(LeetCode) ——100. 相同的树(C语言)

题目:相同的树



解题思路:

根据题目描述如果两个二叉树都为空,则两个二叉树相同。如果两个二叉树中只有一个为空,则两个二叉树一定不相同。

如果两个二叉树都不为空,那么首先判断它们的根节点的值是否相同,若不相同则两个二叉树一定不同,若相同,再分别判断两个二叉树的左子树是否相同以及右子树是否相同。递归地判断两个二叉树是否相同。

最终代码:

cpp 复制代码
bool isSameTree(struct TreeNode* p, struct TreeNode* q) {
    //同时为空
    if(p == NULL && q == NULL)
    {
        return true;
    }
    //一个为空 
    if(p == NULL || q == NULL)
    {
        return false;
    }
    //都不为空
    if(p->val != q->val)
    {
        return false;
    }
    return isSameTree(p->left,q->left) && isSameTree(p->right,q->right);
}

赶紧动起手来吧!!!

点击下方即可跳转
相同的树

相关推荐
其实防守也摸鱼14 小时前
个人学习 Pwn 思路:从基础到漏洞利用的进阶路径
大数据·前端·人工智能·chrome·算法·安全·网络安全
Nuanyt15 小时前
LeetCode Hot 100 链表专题(五)· 2 题(Java)
java·算法·leetcode·链表
§ꦿCFོ༉17 小时前
嵌入式八股—C语言入门学习(一)
c语言·编程语言·嵌入式八股文
w_zero_one18 小时前
递归算法(一)
java·开发语言·算法
圣保罗的大教堂18 小时前
leetcode 3736. 最小操作次数使数组元素相等 III 简单
leetcode
文丑颜不良啊19 小时前
LeetCode1881~1990题目解析
java·leetcode
沐晓时光19 小时前
C语言入门,字符串和字符串函数知识讲解
c语言·开发语言
风影同志7832419 小时前
20 个比特能装下多少行情?——实测拆解 Kronos 的 K 线分词器
算法
写的都是BUG20 小时前
APK 里的钥匙,一直就放在门口:聊聊加固真正该做什么
前端·算法