LeetCode:100. Same Tree相同的树(C语言)

忘是亡心i 2022-11-25 01:56 191阅读 0赞

题目描述:
给定两个二叉树,编写一个函数来检验它们是否相同。

如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。

示例 1:

  1. 输入: 1 1
  2. / \ / \
  3. 2 3 2 3
  4. [1,2,3], [1,2,3]

输出: true

示例 2:

  1. 输入: 1 1
  2. / \
  3. 2 2
  4. [1,2], [1,null,2]

输出: false

示例 3:

  1. 输入: 1 1
  2. / \ / \
  3. 2 1 1 2
  4. [1,2,1], [1,1,2]

输出: false

解答:

  1. /** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */
  2. bool isSameTree(struct TreeNode* p, struct TreeNode* q){
  3. if(NULL == p && NULL == q){
  4. return true;
  5. }
  6. else if(NULL == p || NULL == q){
  7. return false;
  8. }
  9. else if(p->val != q->val){
  10. return false;
  11. }
  12. else{
  13. return isSameTree(p->left, q->left)&&isSameTree(p->right, q->right);
  14. }
  15. }

运行结果:

在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,191人围观)

还没有评论,来说两句吧...

相关阅读

    相关 0100-Same Tree(相同)

    > 这个系列算是出于个人兴趣开的一个新坑吧,最近看到同学刷LeetCode算法题,就想写写那些可以一行Python代码写出来的题目,因此本专栏的文章的解题方式效率不做保证,只为