c/c++语言开发共享leadcode的Hot100系列–617. 合并二叉树

合并,就是两个树的结构交集部分,数据相加,否则,取非空部分。 所以,这里相当于是对两棵树同时遍历: 如果两棵树节点都不为空,则数据相加, 否则,直接指针把不为空的节点复制过来。 注:这里没有申请内存,而直接对原有的树进行改造,这样可以节省申请内存的时间,且节省一些内存。 …

合并,就是两个树的结构交集部分,数据相加,否则,取非空部分。
所以,这里相当于是对两棵树同时遍历:
如果两棵树节点都不为空,则数据相加,
否则,直接指针把不为空的节点复制过来。

注:这里没有申请内存,而直接对原有的树进行改造,这样可以节省申请内存的时间,且节省一些内存。

struct treenode* mergetrees(struct treenode* t1, struct treenode* t2){          struct treenode *ptemp = null;          if ((null == t1) && (null == t2))         return null;     else if ((null != t1) && (null != t2))     {         ptemp = t1;         ptemp->val = t1->val + t2->val;     }     else if (null != t1)     {         return t1;     }     else if (null != t2)     {         return t2;     }     ptemp->left = mergetrees(t1->left, t2->left);     ptemp->right = mergetrees(t1->right, t2->right);      return ptemp;

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/602859.html

(0)
上一篇 2021年5月11日
下一篇 2021年5月11日

精彩推荐