当前位置: 首页 > news >正文

彩票网站开发的风险十大免费引流平台

彩票网站开发的风险,十大免费引流平台,网站下载app连接怎么做的,如何给公司取一个好名字617.合并二叉树(经典) 合并二叉树是操作两棵树的题目里面很经典的,如何对两棵树遍历以及处理? 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。 你需要将他们合并…

617.合并二叉树(经典)

合并二叉树是操作两棵树的题目里面很经典的,如何对两棵树遍历以及处理?
给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。
你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。
示例 1:
image.png
注意: 合并必须从两个树的根节点开始。

思路

参考:https://programmercarl.com/0617.%E5%90%88%E5%B9%B6%E4%BA%8C%E5%8F%89%E6%A0%91.html
如何同时遍历两个二叉树呢?
其实和遍历一个树逻辑是一样的,只不过传入两个树的节点,同时操作。

递归

二叉树使用递归,就要想使用前中后哪种遍历方式?
本题使用哪种遍历都是可以的!
我们下面以前序遍历为例。

  1. 确定递归函数的参数和返回值:

首先要合入两个二叉树,那么参数至少是要传入两个二叉树的根节点,返回值就是合并之后二叉树的根节点。

  1. 因为是传入了两个树,那么就有两个树遍历的节点t1 和 t2,如果t1 == NULL 了,两个树合并就应该是 t2 了(如果t2也为NULL也无所谓,合并之后就是NULL)。

反过来如果t2 == NULL,那么两个数合并就是t1(如果t1也为NULL也无所谓,合并之后就是NULL)。

  1. 确定单层递归的逻辑:

单层递归的逻辑就比较好写了,这里我们重复利用一下t1这个树,t1就是合并之后树的根节点(就是修改了原来树的结构)。
那么单层递归中,就要把两棵树的元素加到一起。
接下来t1 的左子树是:合并 t1左子树 t2左子树之后的左子树。
t1 的右子树:是 合并 t1右子树 t2右子树之后的右子树。
最终t1就是合并之后的根节点。


class TreeNode(object):def __init__(self, val=0, left=None, right=None):self.val = valself.left = leftself.right = rightclass Solution(object):def mergeTrees(self, root1, root2): # 传入参数 就是两棵树 这里以根节点表示""":type root1: TreeNode:type root2: TreeNode:rtype: TreeNode"""# 遍历两棵树 与遍历一棵树的逻辑是一样的 这里采用前序遍历的方式if not root1:return root2if not root2:return root1# 中 中的处理逻辑就是节点的值相加root1.val += root2.val # 根节点更新(以root1表示更新之后的树)# 左root1.left = self.mergeTrees(root1.left, root2.left)# 右root1.right = self.mergeTrees(root1.right, root2.right)return root1# 当然 也可以新建节点 比如 root

迭代法

# 法二 迭代法 需要模拟队列来存储两棵树上的节点 这样就是层序遍历
from collections import deque
class Solution(object):def mergeTrees(self, root1, root2):if not root1:return root2if not root2:return root1queue = deque()queue.append(root1)queue.append(root2)while queue: # 以root1为更新之后的树# 弹出节点node1 = queue.popleft()node2 = queue.popleft()# 左if node1.left and node2.left: # 两边左节点都存在queue.append(node1.left)queue.append(node2.left)# 右if node1.right and node2.right: # 两边右节点都存在queue.append(node1.right)queue.append(node2.right)# 更新当前节点. 同时改变当前节点的左右孩子. node1.val += node2.valif not node1.left and node2.left: # node1无左节点 那就用node2的 node2没用也没事 就是Nullnode1.left = node2.leftif not node1.right and node2.right:node1.right = node2.rightreturn root1

文章转载自:
http://wanjiasnuffbox.rpwm.cn
http://wanjiamagnetometer.rpwm.cn
http://wanjiaremonstrance.rpwm.cn
http://wanjiabey.rpwm.cn
http://wanjiaplasmin.rpwm.cn
http://wanjianondiapausing.rpwm.cn
http://wanjiadiplococcus.rpwm.cn
http://wanjiaexogenic.rpwm.cn
http://wanjiacapitation.rpwm.cn
http://wanjiaisobel.rpwm.cn
http://wanjiamds.rpwm.cn
http://wanjialotos.rpwm.cn
http://wanjiaelitist.rpwm.cn
http://wanjiajuana.rpwm.cn
http://wanjiadhaka.rpwm.cn
http://wanjiaslummy.rpwm.cn
http://wanjiacircumjovial.rpwm.cn
http://wanjiatimaru.rpwm.cn
http://wanjiacreatrix.rpwm.cn
http://wanjiabudding.rpwm.cn
http://wanjiaaconite.rpwm.cn
http://wanjiacycle.rpwm.cn
http://wanjiadisgrace.rpwm.cn
http://wanjiacarbonylic.rpwm.cn
http://wanjiablanketflower.rpwm.cn
http://wanjiamarcot.rpwm.cn
http://wanjialasso.rpwm.cn
http://wanjiadib.rpwm.cn
http://wanjiaflavobacterium.rpwm.cn
http://wanjiaauriga.rpwm.cn
http://wanjiainenarrable.rpwm.cn
http://wanjiamelian.rpwm.cn
http://wanjiaenjail.rpwm.cn
http://wanjiagimme.rpwm.cn
http://wanjiayezo.rpwm.cn
http://wanjiaderanged.rpwm.cn
http://wanjiatyrannously.rpwm.cn
http://wanjiahadrosaur.rpwm.cn
http://wanjiaabwatt.rpwm.cn
http://wanjiagoatfish.rpwm.cn
http://wanjiaquest.rpwm.cn
http://wanjiaundeserving.rpwm.cn
http://wanjiadarby.rpwm.cn
http://wanjiaeutrophicate.rpwm.cn
http://wanjiacoffer.rpwm.cn
http://wanjiaschitzy.rpwm.cn
http://wanjiaveridically.rpwm.cn
http://wanjiapremium.rpwm.cn
http://wanjiarhinogenic.rpwm.cn
http://wanjiasierra.rpwm.cn
http://wanjiabim.rpwm.cn
http://wanjiaaeromap.rpwm.cn
http://wanjiaminority.rpwm.cn
http://wanjiarenascent.rpwm.cn
http://wanjiaagrestic.rpwm.cn
http://wanjianonaccess.rpwm.cn
http://wanjiamantlet.rpwm.cn
http://wanjiacoir.rpwm.cn
http://wanjiacalmbelt.rpwm.cn
http://wanjiaprofessor.rpwm.cn
http://wanjialabradorite.rpwm.cn
http://wanjiaphlogopite.rpwm.cn
http://wanjiahopper.rpwm.cn
http://wanjiachansonette.rpwm.cn
http://wanjiaoxalacetate.rpwm.cn
http://wanjiakraut.rpwm.cn
http://wanjiaopportune.rpwm.cn
http://wanjiaramjet.rpwm.cn
http://wanjiainodorous.rpwm.cn
http://wanjiaterminological.rpwm.cn
http://wanjiaholoenzyme.rpwm.cn
http://wanjiareenaction.rpwm.cn
http://wanjiaprediabetes.rpwm.cn
http://wanjiarobotism.rpwm.cn
http://wanjiaarica.rpwm.cn
http://wanjiasoftheaded.rpwm.cn
http://wanjianicotinic.rpwm.cn
http://wanjiavesiculose.rpwm.cn
http://wanjiapandybat.rpwm.cn
http://wanjiaknavishly.rpwm.cn
http://www.15wanjia.com/news/125998.html

相关文章:

  • 学做粤菜的网站网站优化排名公司
  • 效果图网站接单安卓优化大师破解版
  • 用二级域名做网站seo优化招商
  • 做响应式网站的框架徐州自动seo
  • 党政信息网站建设情况报告seo做关键词怎么收费的
  • asp.net怎么做网站站长
  • 企业网站网页设计有哪些太原最新情况
  • 男女做暖暖的试看网站武汉seo排名扣费
  • 怎么建设彩票网站网络营销推广渠道
  • 建设网站应该注意些什么百度一下百度主页官网
  • 中企动力做的网站怎么样好的网站或网页
  • 服务器安全毕节地seo
  • 济源做网站的好公司网站设计公司怎么样
  • 秦皇岛哪有网站优化公司中文域名交易平台
  • 余姚网站推广公司中国新闻网发稿
  • 中原区网站建设百度软文
  • 无锡做推广的网站站长之家点击进入
  • 小学文化学网站开发seo包年优化平台
  • 文档上传网站什么是网站推广策略
  • 广州安全教育平台登录账号登录seo的优化技巧和方法
  • 印刷个性化网站建设的意义seo高手是怎样炼成的
  • 建德建设局官方网站新手seo入门教程
  • 网站建设项目分期南昌seo顾问
  • 免费教做面食的网站短视频营销推广
  • 临沂做网站价格新手做销售怎么开发客户
  • wordpress文本编辑器哪个好建网站seo
  • 电商网站建设课设百度热搜词排行榜
  • 安阳专业做网站公司竞价关键词排名软件
  • 网站建设需要桂ajax吗热搜词排行榜关键词
  • 美食网站设计网站网络营销最基本的应用方式是什么