日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

牛客题霸 [合并二叉树] C++题解/答案

發布時間:2023/12/3 c/c++ 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 牛客题霸 [合并二叉树] C++题解/答案 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

牛客題霸 [合并二叉樹] C++題解/答案

題目描述

已知兩顆二叉樹,將它們合并成一顆二叉樹。合并規則是:都存在的結點,就將結點值加起來,否則空的位置就由另一個樹的結點來代替。例如:
兩顆二叉樹是:
Tree 1
1
/ \
3 2
/
5

Tree 2
2
/
1 3
\
4 7

合并后的樹為
3
/
4 5
/ \
5 4 7

題解:

題目的本質就是兩顆樹對應的部位相加
所以
t1的左子樹=t1的左子樹+t2的右子樹
t1的右子樹=t1的右子樹+t2的右子樹

代碼:

/*** struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/class Solution { public:/*** * @param t1 TreeNode類 * @param t2 TreeNode類 * @return TreeNode類*/TreeNode* mergeTrees(TreeNode* t1, TreeNode* t2) {// write code hereif (!t1 && !t2) {return NULL;}if (!t1) {return t2;}if (!t2){return t1;}t1->val+=t2->val;t1->left=mergeTrees(t1->left, t2->left);t1->right=mergeTrees(t1->right, t2->right);return t1;} };

總結

以上是生活随笔為你收集整理的牛客题霸 [合并二叉树] C++题解/答案的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。