2019/12/07

Posted jovesun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2019/12/07相关的知识,希望对你有一定的参考价值。

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的主要内容,如果未能解决你的问题,请参考以下文章

2019.12.07 java基础

微信小程序代码片段

VSCode自定义代码片段——CSS选择器

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

片段和活动之间的核心区别是啥?哪些代码可以写成片段?

VSCode自定义代码片段——.vue文件的模板