码迷,mamicode.com
首页 > 其他好文 > 详细

2019/12/07

时间:2019-12-07 23:20:33      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:第一个   空间复杂度   大致   null   需要   今天   很多   node   lse   

LeetCode_617

题目描述:合并二叉树

我的解法:两个节点均有值,则值相加;仅有一个值,则为该值;否则为空;

     递归实现:返回值为节点,终止条件为二者节点均为空,递归条件为res -> left = mergeTree(t1->left, t2->left); res->right = mergeTree(t1->right, t2->right); 

部分代码:

    TreeNode* mergeTrees(TreeNode* t1, TreeNode* t2) {
        if (t1 == NULL && t2==NULL)
            return NULL;
        else if (t1==NULL && t2!=NULL)
            return t2;
        else if (t1!=NULL && t2 == NULL)
            return t1;
        else{
            t1->val = t1->val + t2->val;
            t1->left = mergeTrees(t1->left,t2->left);
            t1->right = mergeTrees(t1->right,t2->right);
            return t1;
        }
    }

题后反思:解法与官方大致同,表扬哦。(第一个if条件有点弱智484)

        时间复杂度:O(N),其中 N 是两棵树中节点个数的较小值。

     空间复杂度:O(N),在最坏情况下,会递归 N 层,需要 O(N) 的栈空间

今天发现很多憨批都脱单了啊,什么时候到俺啊<?.?>

2019/12/07

标签:第一个   空间复杂度   大致   null   需要   今天   很多   node   lse   

原文地址:https://www.cnblogs.com/Jovesun/p/12003785.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!